如何使用Wampserver 3.0.0 64安装ImageMagick?

问题描述 投票:3回答:2

我失去了一天试图解决这个问题,在不同的时间获得“没有解码代表这种图像格式”和“指定的模块找不到”错误。我可以在这些问题上找到的信息是在版本号方面的日期,许多包括从PECL发行版覆盖ImageMagick安装的dll或将dll复制到windows / system32中的说明;我不想做的两件事。

环境:Windows 10 Wampserver:3.0.0,Apache / 2.4.17(Win64)PHP / 5.6.16

php imagemagick wampserver
2个回答
12
投票
  1. 下载并安装最新的ImageMagick:ImageMagick-7.0.2-0-Q16-x64-dll.exe
  2. http://windows.php.net/downloads/pecl/releases/imagick/3.4.3rc1/下载了php_imagick-3.4.3rc1-5.6-ts-vc11-x64
  3. 将php_imagick.dll解压缩到[wampserver目录] \ bin \ php \ php5.6.16 \ ext
  4. 将extension = php_imagick.dll添加到[wampserver目录] \ bin \ apache \ apache2.4.17 \ bin \ php.ini
  5. 得到“没有这种图像格式的解码委托”错误,但至少想象力出现在phpinfo()中我可以看到php_imagick.dll是用ImageMagick 6.9.3-7 Q16 x64编译的。事先没有明显的方法可以知道这一点。
  6. http://ftp.icm.edu.pl/packages/ImageMagick/binaries/下载了ImageMagick-6.9.3-7-Q16-x64-dll.exe(ImageMagick已经从他们的网站上删除了这个包)。
  7. 卸载ImageMagick-7.0.2-0-Q16-x64,将ImageMagick-6.9.3-7-Q16-x64安装到c:\ ImageMagick,将c:\ ImageMagick添加到PATH(在前面,以避免与windows convert.exe冲突) )。
  8. 验证一切正常: $image = new Imagick(); $image->readImage([path to my jpeg]); $wm = new Imagick(); $wm->readImage([path to my watermark png]); $image->compositeImage($wm, imagick::COMPOSITE_OVER, 5, 5); header("Content-Type: image/jpeg"); echo $image;

0
投票

我尝试过很多东西。做的诀窍是在活动的php.ini行末尾添加:

[ImageMagick]
extension="C:\WampDeveloper\Components\Php\ext\php_imagick\php_imagick.dll"
;imagick.locale_fix=0
;imagick.progress_monitor=0

图片来源:http://www.devside.net/wamp-server/installing-and-using-imagemagick-with-imagick-php-extension-php_imagick-dll-on-wamp

© www.soinside.com 2019 - 2024. All rights reserved.