外部图形文件格式(页面待完善)
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=ProPgExternalFormats
- 最后更新: 2024-03-15
rtlib 通过 Bload 和 Bsave 支持的外部图形文件格式。
这是一个粗略的起点,还有许多内容需要添加...(来自 coderJeff)
与 BLOAD/BSAVE 一起使用的文件
文件的第一个字节:
&hFD QB BSAVED BLOCK
&hFE FB BSAVED BLOCK
&h42 Windows Bitmap (&h42 = ASC("B"))对于 QB/FB 保存块,&hFD 和 &hFE 将文件标识为 QB/FB 格式,接下来的字节确定文件中包含的数据大小,后面是 DATA 以及可选的 PALETTE。
对于 Windows Bitmap,应与标准 Windows BMP 文件二进制兼容。加载时,&h42 只是将文件标识为可能是 Windows 位图,头部的其他检查可能导致加载失败。
QB BSAVED 块
OFS LEN DESCRIPTION
0 1 QB BSAVED BLOCK Identifier (&hFD)
1 4 Ignored
5 2 unsigned 16 bit SIZE, little endian order
7 ... DATA (expected to be SIZE bytes long)
? ... PALETTE COLORSBSAVE 和 QB/FB 保存块
BSAVE( filename, source [,[ size ][,{ pal | pal, bitsperpixel }]] )
BSAVE 始终使用 FB 格式(&hFE)写入
写入的 DATA 字节是 SIZE 参数和 screen * pitch 中较小的值
PALETTE 从 pal 参数或当前屏幕的调色板写入
BLOAD 和 QB/FB 保存块
BLOAD filename [, dest [, [pal]]]
如果未给出 dest,则 DATA 逐字节直接加载到屏幕内存。如果 SIZE 超过当前 screen * pitch,则 DATA 被截断以适应当前图形模式的大小。
如果给出 dest,则 DATA 直接加载到 'dest' 指向的内存位置。
不支持 RLE(游程长度编码)。因此只支持未压缩格式。
BLOAD/BSAVE 和 Windows 位图
BLOAD - 如果第一个字节是 &H42,则尝试将文件作为位图加载
BSAVE - 如果文件名有 '.bmp' 扩展名,则保存为位图
.....
.....
另请参阅
BloadBsave- .....
返回 目录