it编程 > 网页制作 > Flex

flex压缩图片exif信息(作者/相机)丢失问题解决

172人参与 2024-05-19 Flex

在用flex的jpegencoder对图片进行压缩的时候,exif信息会丢失,也就是图片的作者,用的相机,神马的,全部都没有了,怎么办呢?

经研究jpeg的文档,最终解决这个问题
1.jpeg的文件格式,分成一个一个frame,每个frame以0xff打头,然后跟着一个标识未,比如0xffd8表示文件的开始,0xffd9表示文件结束,紧接着标识位的是这个frame的长度,长度不包括0xff和标识位,但包括这个2个字节的长度,比如一个frame开始了,先是一个0xff然后是一个0xxx,然后是两个0x0010,说明这个frame的长度是16,整个frame的长度其实是18,

2.我们要研究的是图片的exif信息,他的标识位是0xe1
而且这个0xe1有两种情况,第一种,就是紧跟着文件头,就是0xe1,第二种,就是在0xe1之前还有一个0xe0,
所以在把这个bytearray在如到图片对象之前,先要获取到这个0xe1的frame的所有数据,代码如下:

然后处理完了这些,我们就需要把这段frame给插到压缩之后的bytearray里
代码的逻辑应该一目了然的,嘿嘿
(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Flex帮助文档(html格式)制作及ASDoc的使用

05-19

Flex帮助文档(chm格式)制作及FAR的使用

05-19

flex与js通信与彼此之间的互调整理(二)

05-19

flex与js通信与彼此之间的互调整理(一)

05-19

Flex 基于数据源的Menu Tree实现代码

05-19

Flex3 DataGrid拖拽到ClumnChart动态显示图表实现代码

05-19

猜你喜欢

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

发表评论