libpng警告:使用png_read_image时应打开隔行处理

时间:2019-05-29 19:30:18

标签: ubuntu libpng

我遇到了这个错误: libpng警告:使用png_read_image

时应打开隔行处理

每个答案我都已经看到,我已经尝试升级我的libpng版本。但是,看来我的系统上安装了多个版本。

libpng12-0 1.2.54-1ubuntu1.1    
libpng16-16 1.6.34-1ubuntu0.18.04.2

如果我运行此命令:

ldconfig -p | grep libpng

我看到了:

libpng16.so.16 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpng16.so.16
libpng12.so.0 (libc6,x86-64) => /lib/x86_64-linux-gnu/libpng12.so.0
libpng12.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpng12.so.0

在尝试更新libpng时,我做了以下事情:

sudo apt-get update
sudo apt-get --only-upgrade install libpng16-16

我以为1.2.54版本是我的罪魁祸首,但是我不确定为什么它仍然存在或我是否应该删除它。

更新

所以我运行了以下命令,试图找出哪些软件包可能取决于1.2.54版本,这就是我得到的:

libpng12-0
Reverse Depends:
usrmerge
libplymouth2
liblemonldap-ng-portal-perl

要获得上述结果,我使用了以下命令:

apt-cache rdepends libpng12-0

更新#2

真的在查看我的apache错误日志,看来该错误是在apache重新启动后专门发生的,通常还会出现此错误:

libpng warning: iCCP: known incorrect sRGB profile

1 个答案:

答案 0 :(得分:0)

我为我的狭隘情况解决了这个问题。每次网站访问者注册以获取更多信息时,我都会在 apache error_log 中收到这些警告之一libpng warning: Interlace handling should be turned on when using png_read_image。在我的情况下,它是由 PHP 脚本在向用户显示之前处理 png 图像引起的。该脚本正在使用使用 libpng 的命令“imagecreatefrompng”。我首先尝试通过使用以下命令插入一行来修复它:imageinterlace($image, 0); 以强制图像为非隔行扫描。但这没有用。我必须找到所有涉及的 png 文件,并使用照片应用程序将它们读入并将它们作为 交错 png 文件写出。这消除了那些警告消息。