PAL文件(Palette,调色板)及格式

.PAL文件指的是Palette(调色板)文件,通常有两种格式:一是Microsoft(微软) PAL 文件,二进制格式用于PhotoShop 和 Paintshop Pro;一是JASC PAL文件,文本格式用于Paintshop Pro等。

JASC PAL文件是文本形式,一般259行,前三行分别是:

JASC-PAL

0100

256

其中256是调色板的颜色数,4-259行存储的是调色板256种颜色的RGB值,每个值以空格间隔,例如白色是‘255 255 255’,黑色是‘0 0 0 ’,示例的文件格式为:

125 125 125
255 255 255
0 128 0
255 0 0
0 255 0
255 255 0
255 128 0
255 0 255
0 0 255
1 1 1



Microsoft PAL文件是二进制形式。

PAL 文件实际上就是一个RIFF文件(和WAV文件和AVI文件相似),所以PAL文件以一个标准的RIFF文件头开始。
表 1:     RIFF文件头
===============================================================
偏移              长度                     描述
0x00              1 DWORD            标志 (一般是 0X52494646)
0x04              1 DWORD            文件长度减去 8
0x08              1 DWORD            RIFF文件类型 (一般是 0X50414C20)
在RIFF文件头之后是所谓的"块"(在AVI文件中有多个"块",但是在PAL文件只有一个"块")。RIFF"块"的结构定义如下:
表 2:    RIFF "块"结构
===============================================================
偏移              长度                     描述
0x0B              1 DWORD            标志 (一般是 0X64617461)
0x10              1 DWORD            块的大小 (文件长度减去20)
0x14              n BYTES               数据
"块"结构中块的大小也就是数据的大小。数据中第一个DWORD的数据包含了调色板的信息。你可以把这个DWORD分成两个WORD型的数据。其中,高字节的WORD中包含了调色板中所包含颜色的数目,换句话说高字节WORD中包含了在第一个DWORD数据之后有多少个调色板实体。第一个DWORD数据的低字节WORD中包含了调色板的版本号,这个版本号一般是0X300。紧跟着第一个DWORD之后是一系列连续的DWORD类型的数据代表了调色板实体。一个调色板实体是这么编码的:0XRRGGBB00,这里R代表红色,G 代表绿色,B代表蓝色。
00  01  02  03  04  05  06  07  08  09  0A  0B  0C  0D  0E  0F
---------------------------------------------------------------------------------------------------
      52  49  46  46 50  00  00  00  50  41  4C  20  64  61  74  61
      44  00  00  00  00  03  10  00  00  00  00  00  80  00  00  00
      00  80  00  00  80  80  00  00  00  00  80  00  80  00  80  00
      00  80  80  00  C0  C0  C0  00  80  80  80  00  FF  00  00  00
      00  FF  00  00  FF  FF  00  00  00  00  FF  00  FF  00  FF  00
      00  FF  FF  00  FF  FF  FF  00

Reference:

JASC-PAL  http://liero.nl/lierohack/docformats/other-jasc.html

Microsoft PAL  http://download.csdn.net/detail/jos34/3766850


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值