作业2 分析TGA文件「建议收藏」

一、TGA文件格式解析二、文件格式文件头(TgaFileHeader):由图像描述信息字段长度、颜色表类型、图像类型、颜色表说明和图像说明五个字段组成,总计18字节,描述了图像存储的基本信息,应用程序可依据该部分字段值读写图像数据。图像/颜色表数据(Image/ColorMapData):由图像描述信息(可选)、颜色表数据和图像数据三部分组成,用于存储图片的图像信息。开发者自定义区域(DeveloperArea):包含开发者定义字段列表和开发者字典(用于存储开发者定义字段的值),该区域为

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

一、TGA文件格式解析
在这里插入图片描述
二、文件格式
文件头(Tga File Header):由图像描述信息字段长度、颜色表类型、图像类型、颜色表说明和图像说明五个字段组成,总计18字节,描述了图像存储的基本信息,应用程序可依据该部分字段值读写图像数据。

图像/颜色表数据(Image/Color Map Data):由图像描述信息(可选)、颜色表数据和图像数据三部分组成,用于存储图片的图像信息。

开发者自定义区域(Developer Area):包含开发者定义字段列表和开发者字典(用于存储开发者定义字段的值),该区域为开发者扩展该文件格式提供接口,以便存储额外的信息。

扩展区域(Extension Area):由扩展区域大小、作者姓名、作者注释、日期/时间、工作名称/ID、工作累计耗时、编辑软件的名称、编辑软件的版本、关键颜色、像素宽高比、灰度值、颜色校正表偏移量、缩略图偏移量、扫描线表偏移量、alpha通道类型、扫描线表、缩略图图像数据和颜色校正表组成,为Truevision公司定义的标准扩展功能,以提供更多的图像附加信息。

文件尾(TGA File Footer):由扩展区域偏移量、开发者目录偏移量和TGA文件扩展格式签名三部分组成,用于验证TGA文件扩展格式,并可以确定扩展区域和开发者字典的位置

三、TGA图片分析
该图片为原图,jpg格式
在这里插入图片描述
1、文件头分析
在这里插入图片描述

(1)第一个字节00:文件中没有图像信息字段
(2)第二个字节00:没有颜色表
(3)第三个字节02:图像类型为未压缩的真彩图像
(4)第四字节到第六字节均为0:图像不含颜色表
(5)第七字节到第十二字节均为0:图像起始坐标为原点。
(6)第十三字节和第十四字节AD03,十六进制为03AD,为图片的宽度。十进制为941
(7)第十五字节和第十六字节1E03,十六进制为031E,为图片的高度。十进制为798
与原始jpg图像格式相符合在这里插入图片描述
(8)第十七字节为18,每个像素占用的位数为24位
(9)第十八字节为20:转换为二进制:00100000。0-3位均为0,说明每个像素属性位的数量为0;第五位和第四位为10,说明像素数据从文件发送到屏幕的顺序为从上到下,从左到右。
图片所占字节为941×798×24÷8=2252754字节,总共为2252772字节。
与转换后的图片大小一致,说明该图片没有开发者区域、拓展区域和TGA文件注释。
在这里插入图片描述

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 编程实现盗版QQ「建议收藏」

    编程实现盗版QQ「建议收藏」源码下载(附件1 )一、思路分析  (一) 数据包的角度 (二) 钩子角度 1. 钩子简介 2. 程序流程 ;二、 实现过程   (一) 定义宏   (二) 枚举进程找到QQ.exe   (三) 枚举所有窗口,找属于QQ.exe的窗口   (四) 获取用户名、密码、登陆按钮的句柄   (五) 创建钩子用的DLL   (六) 安装钩子  一直以来我对盗QQ这种技术都比较的好奇,最近为了练

    2022年7月20日
  • 滑雪教学视频高级双板_双板滑雪中级技巧

    滑雪教学视频高级双板_双板滑雪中级技巧转载于:http://www.cnblogs.com/1-2-3/archive/2012/03/08/ski-vidio.html1. 央视教学片http://www.youku.com/playlist_show/id_1526075_ascending_1_mode_pic_page_1.html  共21集,讲解非常详尽,但是从另一方面讲,它太长了,掺杂了各种花里胡哨的东西

    2022年8月29日
  • IdeaVim-常用操作「建议收藏」

    IdeaVim-常用操作「建议收藏」IdeaVim简介IdeaVim是IntelliJIDEA的一款插件,他提高了我们写代码的速度,对代码的跳转,查找也很友好。安装位置安装之后它在Tools>VimEmulator具体操作i模式i模式即为编辑模式,按下字母i开启就可以打字。Esc从i模式切换为Vim,按下键盘的Esc键切回Vim。方向键上:k,下:j,左:h,右:…

    2022年5月5日
  • docker(2)CentOS 7安装docker环境「建议收藏」

    docker(2)CentOS 7安装docker环境「建议收藏」前言前面一篇学了mac安装docker,这篇来学习在linux上安装docker环境准备Docker支持以下的CentOS版本,目前,CentOS仅发行版本中的内核支持Docker。Doc

    2022年7月28日
  • 求生之路2机枪mod_求生之路2好看的枪械mod名字

    求生之路2机枪mod_求生之路2好看的枪械mod名字动态子弹(弹匣)数量修改工具:GCFScape、notepad++、vpk.exe自己在搜索引擎输入文件名找资源教程:教程均假设修改smg的静态子弹和动态子弹,其他枪械修改一样,只不过修改对象不同。1.先找出武器原始的数据文件(1).打开GCFScape,左上角File-open。找到“\Steam\SteamApps\common\Left4Dead2\left4dead…

    2022年10月29日
  • phpstorm 激活码 suspend[在线序列号]

    phpstorm 激活码 suspend[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日

发表回复

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

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