设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2264|回复: 4
打印 上一主题 下一主题

[已经解决] 有对png格式了解的么?IDAT段内的len怎么算?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2010-6-26
帖子
404

第5届短篇游戏比赛季军

跳转到指定楼层
1
发表于 2011-10-1 12:53:50 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 尘羽泯 于 2011-10-1 16:43 编辑

请问png格式图片IDAT数据块中的len具体怎么算?不是索引模式的图片,是RGBA数据流,知道图片的宽度和高度,知道RGBA数据。len怎么算呢?IDAT的前三个字节固定,然后是len和nlen,nlen就是len的补码(其实我一想到这个就觉得脑残,浪费了2个字节不说还影响计算效率,而且后面已经有Adler和CRC双重校验了)。那么len是怎么算的呢?一张59*126的RGBA图片,打开一看IDAT段内的len是237,跟59和126似乎找不到什么关系嘛。
Fijoy游戏引擎:http://www.fijoy.com/

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

5
发表于 2011-10-2 20:05:33 | 只看该作者
本帖最后由 yangff 于 2011-10-2 20:08 编辑

sizeof(Zlib(data).length).pack("N")
如果你说的是png_idat段的header(\x49\x44\x41\x54)前面那玩意的话……
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

CHAOS

梦石
0
星屑
92
在线时间
244 小时
注册时间
2005-11-4
帖子
3521

贵宾

4
发表于 2011-10-1 17:42:41 | 只看该作者
楼主加油吧,虽然我觉得研究这个没什么用。嘛……不过能搞懂一个别人不懂的东西,何乐而不为呢?
梦想世界,在你伸手!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2010-6-26
帖子
404

第5届短篇游戏比赛季军

3
 楼主| 发表于 2011-10-1 16:06:37 | 只看该作者
Remainfree 发表于 2011-10-1 15:24
禁止重贴:http://zhidao.baidu.com/question/325177475.html
                  http://tieba.baidu.com/f ...

你牛×  - -b、、、
Fijoy游戏引擎:http://www.fijoy.com/
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
27 小时
注册时间
2011-9-25
帖子
31
2
发表于 2011-10-1 15:24:56 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-19 19:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表