PCX文件(图片交换文件)是一种光栅图像文件格式,用作PC画笔应用程序的本机文件格式。由美国ZSoft公司针对DOS和Windows平台开发,在BMP、JPEG和PNG文件格式。PCX文件的大小更小,因为它们是使用RLE编码压缩的。它用于多页DCX文件,该文件主要用于创建数字传真文件。
PCX文件格式
PCX文件以二进制文件格式保存到光盘中。内部文件格式结构遵循littleendian字节顺序,分为以下三个部分:
PCX标头-PCX标头的长度为128字节。它包含标识符、版本号、图像尺寸、16种调色板颜色、颜色平面数和每个平面的位深度,以及压缩方法的值。
PCXHeader参考图形文件格式百科全书(第2版)如下所示。
typedef struct _PcxHeader
{
BYTEIdentifier; /* PCX Id Number (Always 0x0A) */
BYTEVersion; /* Version Number */
BYTEEncoding; /* Encoding Format */
BYTEBitsPerPixel; /* Bits per Pixel */
WORDXStart; /* Left of image */
WORDYStart; /* Top of Image */
WORDXEnd; /* Right of Image
WORDYEnd; /* Bottom of image */
WORDHorzRes; /* Horizontal Resolution */
WORDVertRes; /* Vertical Resolution */
BYTEPalette[48]; /* 16-Color EGA Palette */
BYTEReserved1; /* Reserved (Always 0) */
BYTENumBitPlanes; /* Number of Bit Planes */
WORDBytesPerLine; /* Bytes per Scan-line */
WORDPaletteType; /* Palette Type */
WORDHorzScreenSize; /* Horizontal Screen Size */
WORDVertScreenSize; /* Vertical Screen Size */
BYTEReserved2[54]; /* Reserved (Always 0) */
} PCXHEAD;
PCX图像数据
PCX图像数据紧跟在标题之后。根据标题中的字段设置,可以压缩图像数据。PCX文件中数据的存储取决于指定颜色平面的数量。图像数据按行组织。在多个平面的情况下,这些平面按红色、绿色和蓝色数据的顺序排列在行内存储。对平面中的每条线重复此模式。