PCX是一种由美国乔治亚州的ZSoft公司所开发的影像档格式,原本是该公司的PC Paintbrush软体的档案格式(PCX代表PC Paintbrush Exchange),却成了最广泛接受的DOS影像标准之一,然而这种使用格式已经被其他更复杂的影像格式GIFJPEGPNG渐渐取代。

典型的档案格式 编辑

Table A. Typical PCX Image Formats
Planes 位元深度 显示型别
1 1 Monochrome
1 2 CGA
3 1 EGA
4 1 EGA or VGA
1 8 Extended VGA
3 8 Extended VGA and above

PCX是一种不受平台限制的像素影像格式,档案标头储存著有关显示硬体方面的资讯(萤幕解析度、颜色深度、色盘资讯、位元平面(bit planes)等),有别于后面夹带的实际档案资讯。这个资讯能让影像可以正确地传送与显示在不同硬体上的电脑系统。PCX档案一般来说,储存色盘索引的影像,范围从2、4种色彩至16与256种色彩,而且格式同样可扩充以记录真实色彩(24-bit)的影像。

PCX使用区段长度编码(Run Length Encode;缩写RLE),是一种简单的演算法,可以把代表同一个颜色的多个连续位元组,简化成一个双位元组。当档案做处理时,最高位元会用来当作控制切换(旗标),用来决定所给的资料是代表一个像素中的色盘索引值、色彩数值,还是一个用来表示数个接连相同数值像素的RLE数值。

Table B. PCX Image Data Arranged into Color Planes
Row 0 R R R R R R R R R
G G G G G G G G
B B B B B B B B B
A A A A A A A A A
Row 1 R R R R R R R R R
G G G G G G G G
B B B B B B B B B
A A A A A A A A A
Row 2 etc. ....

由于使用两个最高位元来当作旗标,在一个具有256色盘的PCX档案里,色彩索引编号192至255(其两个最高位元都已设为1),则必须储存成RLE双位元组,即使它们在区段中只出现过一两次。而色彩索引编号0至191就可以直接储存或是存成RLE双位元组(无论哪一种较省空间)。因此实际的压缩率可以透过适当的排序色盘顺序来达到最佳化(然而若与其他影像共用色盘时则可能无法实行)。举例来说,一个色盘可以将最常出现的色彩放置于色盘索引编号的0至191的位置,而最少使用的色彩则可座落于色盘的后半部,这个RLE机制可以有不错的应用。

RLE压缩演算法仅需少量的处理器资源与记忆体即可应用,以当时的电脑系统来看是非常有用的,但现今电脑的硬体显示设备逐渐的复杂精密,RLE演算法反而变成没那么省空间,它无法压缩混色(dithered)的影像例如相片或复杂的电脑图像。