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)

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

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

(0)
上一篇 2022年4月10日 下午12:20
下一篇 2022年4月10日 下午12:20


相关推荐

  • 如何搭建自己的IOS分发平台

    如何搭建自己的IOS分发平台1 将签名后的 ipa 文件部署到服务器 1 首先这个网站要支持 HTTPS 协议 用来访问下载 plist 文件 我们可以自己申请证书来配置 2 除了 ipa plist 这两个文件 我们还需要提供两个图片 就是配置 plist 信息的时候填写的 一个尺寸是 57X57 像素 用来显示下载和安装过程中的图标 一个尺寸是 512X512 像素 用来在 iTunes 中显示 3 同时

    2026年3月16日
    2
  • Tkinter制作简单的python编辑器

    Tkinter制作简单的python编辑器

    2021年11月19日
    49
  • Pycharm中如何调整窗口背景颜色(黑白颜色)

    Pycharm中如何调整窗口背景颜色(黑白颜色)1 打开界面左上角的 file2 打开 file 中的 settings3 打开 settings 中的 Editor 打开 ColorScheme4 选择后点击 OK 就行 5 颜色简介 Default 白色背景 Darcula 黑色背景

    2026年3月27日
    2
  • DVP和MIPI接口的简单区别

    DVP和MIPI接口的简单区别区别1、DVP接口:DVP是并行传输,传输速度较慢,传输的带宽低。2、MIPI接口:MIPI是差分串行传输,速度快,抗干扰。目前分为D/C/MPHY三类。主流手机模组现在是使用MIPI_DPHY或CPHY传输:DPHY传输时使用4对差分信号传输图像数据和一对差分时钟信号。CPHY使用3组每组3根单端信号传输数据,每根单端信号能表达3个逻辑电平,相比数据传输率更高,使用引脚数更少。1、DVP接口:使用需要PCLK\sensor输出时钟、MCLK(XCLK)\外部时钟输入、VSYNC\场同步、

    2022年6月1日
    161
  • 最详细动态规划解析——背包问题

    最详细动态规划解析——背包问题动态规划的定义要解决一个复杂的问题,可以考虑先解决其子问题。这便是典型的递归思想,比如最著名的斐波那契数列,讲递归必举的例子。斐波纳契数列的定义如下:F(0)=1,F(1)=1,F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)用递归可以很快写出这样一个函数,咋一看真牛逼,几行代码就搞定了intfib(inti){if(i<=1){ret

    2022年7月26日
    17
  • 【工具教程】Dreamweaver教程「建议收藏」

    【工具教程】Dreamweaver教程「建议收藏」1.Dreamweaver代码不自动提示的问题Dreamweaver代码不自动提示的问题,不论是HTML还是CSS,在网上搜索了半天,大部分是Ctrl+Space的方法,也就是说Dreamweaver的代码自动提示快捷键和输入法切换相冲突,按他们的方法,我的根本解决不了。后来终于找到了解决方法:打开Dreamweaver的“编辑”》“首选参数”(快捷键Ctrl+U)》“常规”》右边的“编

    2022年4月27日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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