无法使用kview或PictureViewer打开PNG文件;与其他观众一起打开

时间:2013-05-21 20:00:00

标签: png libpng

我有一个使用libPNG库创建的PNG文件。该文件在Windows图片查看器和MS Paint上完美打开,但是使用kview(在Linux RHEL5上)或QuickTime PictureViewer(在Windows上)打开失败 - 前者报告“libpng读取错误,而后者报告文件已损坏。类似在Linux上尝试使用ImageMagick库处理PNG时会出现问题。鉴于PNG在某些应用程序上打开正常,似乎文件确实没有损坏;因此我怀疑版本兼容性存在一些问题,但我不是我确实试过在网上搜索但找不到有关根本原因或解决这个问题的任何信息。有人可以指导我吗?

1 个答案:

答案 0 :(得分:0)

根据您在评论中发布的示例图片判断,问题是您的PNG缺少IEND块的结尾 - 您可以通过使用tweakpng打开它并检查结构,或选择“检查有效性”来测试-F5" 。有些可预测的是,某些观众会展示这些PNG,而其他观众则会拒绝这些PNG。

如果您使用的是libpng,似乎您忘记拨打png_write_end()