赞
踩
这一课将介绍对格式化文件读写处理的常用算法,其实也算不上是算法,基本上是对有固定格式的二进制文件的常用处理方法,当然,解压缩数据的时候用到了 RLE(行程长度压缩)算法。我们选择的 PCX 文件是一种非常简单的图像文件格式,在 DOS 时代和早期的 Windows 时代非常流行。下面将讲解如何按照文档介绍的格式读取文件、显示图像内容,并按照文档要求的格式生成新的图像文件,当然,也会讲解大名鼎鼎的 RLE 压缩算法。
PCX 位图文件格式,又被称为 Z-Soft 位图(区别于 Windows 的 Bitmap(BMP)位图),是早期 Windows 和 DOS 时代最流行的图片文件格式。PCX 文件格式简单,同时还使用了一种简单的压缩算法对图像数据压缩,用这种文件作为例子,既能展示文件操作的方法,又能介绍 RLE 压缩算法,一举两得。
PCX 位图文件的文件头是个固定长度的数据结构,长度是 128 字节,拥有固定的格式,用数据结构定义一下应该是这个样子:
- #pragma pack(1)
- typedef struct // pcx 文件头
- {
- BYTE flag; // 标记
- BYTE version; // 版本号
- BYTE encodeing; // 编码方式
- BYTE bitsPrePixel; // 平面像素位数
- WORD xMin; // 最小 X
- WORD yMin; // 最小 Y
- WORD xMax;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。