imagemagick convert.exe error


imagemagick convert.exe error

将planets.png转换为planets.jpg 的代码

<?php 
exec("convert planets.png planets.jpg");
?>

只显示空白页是行不通的。

我已经安装了imagemagik,正如它在phpinfo()中显示的那样查看这里的

还有其他配置可以运行imagemagik代码吗。

错误消息

[Sat Jul 28 20:16:11 2012] [error] [client 127.0.0.1] PHP 1. {main}() D:''wamp''www''test''into.php:0 Invalid Parameter - planets.jpg 

这就是为什么显示错误消息很重要。有了它,我们可以寻找答案。

您无意中运行了名为convert.exe的Microsoft Windows程序,而不是同名的ImageMagick程序。Windows convert.exe程序用于将系统启动磁盘从MS-DOS"FAT"格式转换为NTFS格式。因此,它在系统的生命周期中只能使用一次。源

解决方案

你可以

  • 重命名MS convert.exe或ImageMagick convert.exe
  • 修改您的PATH,将ImageMagick的convert.exe放在MS convert.exe之前
  • 按照中的说明编辑Windows注册表http://savage.net.au/ImageMagick/html/install-convert.html
exec("convert planets.png planets.jpg");

这完全等同于打开命令提示符窗口并执行此操作。

此外,正如@Elzo所指出的,convert.exe是一个内置的可执行文件,因此您需要指定可执行文件的整个路径。(我建议这样做,而不是重命名任何一个可执行文件)。

exec("'"C:''Program Files''..''convert.exe'" planets.png planets.jpg");
php的ImageMagic扩展与ImageMagics的convert命令无关。它是独立的软件。您确定已在系统上安装了命令吗?尝试在shell中手动使用它。

phpinfo()中显示的是ImageMagic扩展。这一个没有带来"convert"cli实用程序,必须与您尝试的使用方式完全不同。