pcx

pcx

目录导航

简介

PCX格式是ZSOFT公司在开发图像处理软件Paintbrush时开发的一种格式,基于PC的绘图程序的专用格式,一般的桌面排版、图形艺术和视频捕获软件都支持这种格式。PCX支持256色调色板或全24位的RGB,图像大小最多达64K*64K像素。不支持 CMYK或 HSI颜色模式,photoshop等多种图像处理软件均支持PCX格式。 PCX压缩属于 无损压缩。

发展过程

PCX这种图像文件的形成是有一个发展过程的。最先的PCX雏形是出现在ZSOFT公司推出的名叫PC PAINBRUSH的用于绘画的商业软件包中。以后,微软公司将其移植到 Windows环境中,成为Windows系统中一个子功能。先在微软的Windows3.1中广泛应用,随着Windows的流行、升级,加之其强大的图像处理能力,使PCX同GIF、TIFF、BMP图像文件格式一起,被越来越多的图形 图像软件工具所支持,也越来越得到人们的重视。

PCX是最早支持彩色图像的一种文件格式,最高可以支持256种彩色。PCX设计者很有眼光地超前引入了彩色图像文件格式,使之成为早期的PC时代非常流行的图像文件格式。

文件组成

PCX图像文件由文件头和实际图像数据构成。文件头由128字节组成,描述版本信息和图像显示设备的横向、纵向分辨率,以及调色板等信息:在实际图像数据中,表示图像数据类型和彩色类型。PCX图像文件中的数据都是用PCXREL技术压缩后的图像数据。

PCX是PC机画笔的图像文件格式。PCX的 图像深度可选为l、4、8bit。由于这种文件格式出现较早,它不支持真彩色。PCX文件采用RLE行程编码,文件体中存放的是压缩后的图像数据。因此,将采集到的图像数据写成PCX文件格式时,要对其进行 RLE编码:而读取一个PCX文件时首先要对其进行RLE解码,才能进一步显示和处理。

实际应用

PCX是Zsoft公司研制的一种常用图像格式,也是在PC机上使用时间最久的一种位图格式。PCX的最新版本支持24位色彩(256色的调色板或全24位RGB),图像的大小可达64k×64k个像素。PCX采用游程长度编码来压缩数据,但是有些情况下压缩效率不高,尤其是对于扫描图像或视频图像。PCX存在许多的版本,其文件头中的一个代码标识了文件所支持的Zsoft产品版本,不同版本的图像特点如表1.1所示。

不同PCX版本的图像特点

版本号 图像特点
0 基本的单色(2色)或4色图像
1 基本的单色(2色)或4色图像,另加16位色图像
2 基本的单色(2色)或4色图像,另加24位调色板的256色以及全24位RGB色图像
3 基本的单色(2色)或4色图像,
4 基本的单色(2色)或4色图像
5 基本的单色(2色)或4色、256色图像以及多平面真彩色图像

文件结构及文件头PCX图像由3个部分组成,即文件头、位图数据和一个多达256种色彩的调色板。PCX文件的文件头为固定的128字节。其中包含版本号、被打印或扫描图像的分辨率(单位为每英寸点数)、大小(单位为像素数)、每扫描行字节数、每像素位数和彩色平面数等信息。文件还可能包括一个调色板以及表明该调色板是灰度还是彩色的一个代码。文件的核心部分是位图数据。位图数据以类似于Packbits压缩法的游程长度压缩形式记录,像素值通常是单字节的索引值,指向调色板中的位置。如果版本号为5,则文件末尾处还有一个单一的位平面和一个RGB值的256色调色板,3种原色各占1个字节。

PCX文件头结构

版本号 图像特点
0 基本的单色(2色)或4色图像
1 基本的单色(2色)或4色图像,另加16位色图像
2 基本的单色(2色)或4色图像,另加24位调色板的256色以及全24位RGB色图像
3 基本的单色(2色)或4色图像,
4 基本的单色(2色)或4色图像
5 基本的单色(2色)或4色、256色图像以及多平面真彩色图像

PCX数据的解释

起始字节 字节数 内容 解释
0 1 Zsoft标志 10(0x0a),Zsoft PCX文件的标志
1 1 版本号 0:PC Paintbrush 2.51:PC Paintbrush 2.8,带调色板
2 1 编码 1:PCX游程长度编码
3 1 位/像素 每个平面的位/像素值,可能值为1、2,、4或8
4 8 图像大小 图像边界极限为Xmin、Ymin、Xmax、Ymax,以像素为单位
12 2 水平分辨率 打印时,X方向的每英寸点数
14 2 垂直分辨率 打印时,Y方向的每英寸点数
16 48 文件头调色板 16色的“EGA/VGA”头调色板
64 1 保留字节 Zsoft保留,为0
65 1 平面 彩色/灰度平面数。PCX图像可以是单彩色,也可以具有多个彩色平面
66 2 每行字节数 每个色彩平面的每行字节数,即存储未压缩图像的一个扫描行所需的字节数,总是偶数
68 2 调色板解释 1:彩色或黑白 2:灰度
70 2 视频屏幕大小X 视频输出的水平像素数-1
72 2 视频屏幕大小Y 视频输出的垂直像素数-1
74 54 全空直到文件结束 0

对PCX进行解码的关键因为在一个PCX文件中可以用到几种不同的记录方法,因此其中必须包含所用方法的标志。在对PCX进行解释时,单靠读取版本号是不够的,最可靠的标志是每像素的位数(文件头的第3个字节)和色彩平面数(文件头的第65个字节),这两个标志与图像色彩数的对应关系如表1.3所示。

PCX图像数据存储

起始字节 字节数 内容 解释
0 1 Zsoft标志 10(0x0a),Zsoft PCX文件的标志
1 1 版本号 0:PC Paintbrush 2.51:PC Paintbrush 2.8,带调色板
2 1 编码 1:PCX游程长度编码
3 1 位/像素 每个平面的位/像素值,可能值为1、2,、4或8
4 8 图像大小 图像边界极限为Xmin、Ymin、Xmax、Ymax,以像素为单位
12 2 水平分辨率 打印时,X方向的每英寸点数
14 2 垂直分辨率 打印时,Y方向的每英寸点数
16 48 文件头调色板 16色的“EGA/VGA”头调色板
64 1 保留字节 Zsoft保留,为0
65 1 平面 彩色/灰度平面数。PCX图像可以是单彩色,也可以具有多个彩色平面
66 2 每行字节数 每个色彩平面的每行字节数,即存储未压缩图像的一个扫描行所需的字节数,总是偶数
68 2 调色板解释 1:彩色或黑白 2:灰度
70 2 视频屏幕大小X 视频输出的水平像素数-1
72 2 视频屏幕大小Y 视频输出的垂直像素数-1
74 54 全空直到文件结束 0

PCX图像的调色板

每像素的位数 色彩平面数 解释
1 1 单色
1 2 4色
1 3 8色
1 4 16色
2 1 4色
2 4 16色
4 1 16色
8 1 256色
8 3 16.7兆色

平面数说明是否使用了调色板。多于一个平面则没有调色板。如果使用了调色板,则可以由版本号和每像素位数决定PCX图像所使用的调色板类型。

相关百科
返回顶部
产品求购 求购