tga文件格式(波形声音文件格式)

Tga常见的格式有非压缩RGB和压缩RGB两种格式,文件的第三个Byte位作为标记:2为非压缩RGB格式,10为压缩RGB格式。这里的类只实现读取非压缩格式的tga文件。先给出tga文件的文件格式:名称偏移长度说明图像信息字段长度01本字段是1字节无符号整型,指出图像信息字

大家好,又见面了,我是你们的朋友全栈君。

Tga常见的格式有非压缩RGB和压缩RGB两种格式,文件的第三个Byte位作为标记:2为非压缩RGB格式,10为压缩RGB格式。这里的类只实现读取非压缩格式的tga文件。

先给出tga文件的文件格式:

名称

偏移

长度

说明

图像信息字段长度

0

1

本字段是 1 字节无符号整型,指出图像信息字段(见本子表的后面)长度,其取值范围是 0 255 ,当它为 0 时表示没有图像的信息字段。

颜色表类型

1

1

0 表示没有颜色表,1 表示颜色表存在。由于本格式是无颜色表的,因此此项通常被忽略。

图像类型码

2

1

该字段总为 2 ,这也是此类型为格式 2 的原因。

颜色表规格字段

颜色表首址

3

2

颜色表首的入口索引,整型(低位-高位)

如果颜色表字段为0,则忽略该字段

颜色表的长度

5

2

颜色表的表项总数,整型(低位高位)

颜色表项位数

7

1

位数(bit),16 代表 16 TGA 24 代表 24 TGA 32 代表 32 TGA

图像规格字段

图像 X 坐标起始位置

8

2

图像左下角 X坐标的整型(低位高位)值

图像 Y 坐标起始位置

10

2

图像左下角 Y坐标的整型(低位高位)值

图像宽度

12

2

以像素为单位,图像宽度的整型(低位高位)

图像高度

14

2

以像素为单位,图像宽度的整型(低位高位)

图像每像素存储占用位数

16

2

它的值为1624 32 等等。决定了该图像是 TGA 16TGA24,TGA 32 等等。

图像描述符字节

17

1

bits 3-0 – 每像素对应的属性位的位数;

对于TGA 16,该值为 0 1,对于 TGA                     24,该值为 0,对于 TGA 32,该值为 8

 

bit 4    – 保留,必须为 0

 

bit 5    – 屏幕起始位置标志

0 = 原点在左下角

1 = 原点在左上角

对于 truevision 图像必须为 0

 

bits 7-6 – 交叉数据存储标志

00 = 无交叉

01 = 两路奇/偶交叉

10 = 四路交叉

11 = 保留

图像信息字段

18

可变

包含一个自由格式的,长度是图像由“图像信息字段”指定。它常常被忽略(即偏移 0 处值为 0 ),注意其最大可以含有 255 个字符。如果需要存储更多信息,可以放在图像数据之后。

颜色表数据

可变

可变

如果颜色表类型为 0,则该域不存在,否则越过该域直接读取图像颜色表规格中描述了每项的字节数,为 234 之一。

图像数据

可变

可变

RGB颜色数据,存放顺序为:BBB GGG RRR (AAA)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/127750.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MySQL使用全文索引(fulltext index)

    MySQL使用全文索引(fulltext index)1.创建全文索引(FullTextindex)    旧版的MySQL的全文索引只能用在MyISAM表格的char、varchar和text的字段上。     不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引,所以具体信息要随时关注官网,   1.1.创建表的同时创建全文索引       CREATETABLEa

    2022年10月24日
  • W3C标准包括什么?[通俗易懂]

    W3C标准包括什么?[通俗易懂]W3C标准包括结构化标准语言(HTML、XML)表现标准语言(CSS)行为标准(DOM、ECMAScript)

  • XPath解析中的 ‘Element a at 0x5308a80’是什么

    XPath解析中的 ‘Element a at 0x5308a80’是什么话不多说,直接上代码以链家网为例,解析网页打印出来的东西居然不是想象中的html文件,而是“<Elementhtmlat0x52e5c10>”这么个东西。这个东西其实是一个元素,后面会介绍到。现在还是说说怎么把这个东西变成我们能看懂的html内容吧。fromlxmlimportetreeimportrequestsfromlxml.htmlimport…

  • 单片机 串口编程之串口通信仿真实验

    单片机 串口编程之串口通信仿真实验单片机串口编程之串口通信仿真实验一、简述记–简单的使能串口,串口收发数据的例子。(使用Proteus仿真+虚拟串口调试)代码,仿真文件打包:链接:https://pan.baidu.com/s/1nyb46fTJrYcAy_VarFdO3A提取码:j44s蓝奏:https://www.lanzous.com/i2fx3oh……

    2022年10月22日
  • UNIX命令

    UNIX命令 一、UNIX命令格式1、UNIX命令提示符   在命令行下,操作系统会显示一提示符,提示用户在此提示符后可以输入一行命令。不同的Shell有不同的缺省提示符:       BShell和KShell的缺省提示符为”$”;       CShell的缺省提示符为”%”;       但当以root用户登录时,系统提示符统一缺省为”#”。用户可以更改自己的缺省Shell和提

  • 多图详解 DeepMind 的超人类水准星际争霸 AI 「AlphaStar」 …

    多图详解 DeepMind 的超人类水准星际争霸 AI 「AlphaStar」 …雷锋网(公众号:雷锋网)AI科技评论按:英国当地时间1月24日,DeepMind在伦敦组织线上直播,向全世界的游戏AI研究人员以及游戏爱好者们介绍自己的AI研发最新进展。参加直播的DeepMind研究人员是DeepMind团队联合研发负责人OriolVinyals和DavidSilver,后者也是Alph…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号