游戏数据总论坛

 找回密码
 立即注册

选用精制JPG弃用PNG与TIF的说明

[复制链接]
查看: 3146|回复: 打印 上一主题 下一主题  0
跳转到指定楼层
楼主

91

主题

0

听众

880

积分
收听TA 发消息
  • Rank: 4

  • 高级会员
发表于 2014-7-5 20:41:00 |只看该作者 |倒序浏览
JPG的缺点显而易见 但是经过比较 它仍是最佳选择
下面列出相关情况
1.JPG vs PNG

jpg支持的色彩数量:
jpg 256*256*256=16777216

png支持的色彩数量+alpha透明:
png8 2 xy 8 256 +256 512
png24 2 xy 24 16777216 +256 16777472
png32 2 xy 32 4294967296 +256 4294967552
(xy为次方 如下图计算器次方功能)
1.jpg
2.jpg
png8使用256alpha对应256色
png24、32则根本无法对应仍然是256的alpha
这一点普通显示器是难以看出的 但到了视网膜屏、超小点距屏等情况下就显现了
这种不对称是有害健康的 所以尽管png24已经有了jpg的色彩数量 但仍不可选用

2.JPG vs TIF

TIF:Tagged Image File Format 标记图像文件格式
特点:
<1>可以用任何颜色深度存储单个光栅图像
<2>可以定义private tag修改原始规范以添加功能或满足特定的需要
如SONY ADOBE等公司 包括bilevel、grayscale、palette-color、RGB、CMYK、YCbCr等色彩模式 标准大小是4GB
此外可以扩展BIGTIFF 也可以采用JPEG LZW压缩
<3>存在安全漏洞
由于其文件为四个部分组成
(1)图像文件头(Image File Header简称IFH)
(2)图像文件目录(Image File Directory简称IFD)
(3)目录入口(Directory Entry简称DE)
(4)图像数据(Image Data简称ID)
并且因为 IFD结构中包含了三类成员
-1- Directory Entry Count : 指出IFD结构里面有多少个目录入口
-2- DE序列 : 用户可以在此添加自定义的标记属性 且DE序列以N个线性排列 数量不定
-3- 偏移量 : 标识下一个文件目录相对于文件开始处的位置 如TIF文件仅包含一幅图像则偏移量=0
——DE序列以N个线性排列 数量不定
所以导致了漏洞发生 漏洞描述:Secunia Advisory:SA21672
该漏洞是由libTIFF内的一个错误导致的 在一个特殊处理过的TIFF图像在Photo Viewer中打开时该漏洞可被操作执行任意代码
更多漏洞:SA21304

libtiff TIFF图像格式读写库
开发语言 C/C++
在LIBTIFF中使用SCANLINE的方式处理非压缩格式STRIP的读写 使用STRIP来处理非压缩格式、压缩格式的读写
但libtiff-lzw-compression-kit可以使libtiff支持lzw
同样zlib可以使libtiff支持Deflate,libjpeg可以使libtiff支持jpeg等

相对于功能强大的tif 无疑jpg会令人放心些
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|游戏数据总论坛

GMT+8, 2024-5-1 16:27 , Processed in 0.140182 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部