PCX
此条目没有列出任何参考或来源。 (2010年4月4日) |
PCX是一种由美国乔治亚州的ZSoft公司所开发的影像档格式,原本是该公司的PC Paintbrush软件的文件格式(PCX代表PC Paintbrush Exchange),却成了最广泛接受的DOS影像标准之一,然而这种使用格式已经被其他更复杂的影像格式如GIF、JPEG、PNG渐渐取代。
典型的文件格式
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数值。
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)的影像例如照片或复杂的电脑图像。