无法让 Imagick 在 Windows + PHP 5.6 (Xampp) 上检测支持的格式

Cannot make Imagick detect supported format on Windows + PHP 5.6 (Xampp)

经过 3 天的研究,google 和挫折让 imagick 在我的 XAMPP 盒子上工作。我可以把它做成 php 模块。但它无法检测支持的格式。

如您所见,我目前安装了 3.1.2,但实际上我从最新的 3.4.1 开始一直工作,并从标有 stable 的那些版本跳转,但我就是做不到让它发挥作用。

当我尝试 运行:

<?php
$handle = fopen('http://xxxxx.png', 'rb');
$img = new Imagick();
$img->readImageFile($handle);
$img->thumbnailImage(100, 0);
echo $image;

我得到:

Uncaught exception 'ImagickException' with message 'Unable to read image from the filehandle' in xxxxx:5 Stack trace: #0 xxxxx\index.php(5): Imagick->readimagefile(Resource id #3) #1 {main} thrown in xxxxx\index.php on line 5

我有的是:

Windows 8.1 64-bit
PHP 5.6.12, x86, TS

(http://i.imgur.com/2pnneqO.png)

就安装而言,这是我到目前为止实际所做的:

并且仍然无法让我的 PHP 检测到 Imagick 支持的文件格式,即使它们应该是 http://prntscr.com/b1l54u :((

有人能告诉我我错过了什么吗?请?

你好像走的路有点曲折。

我拿到的时候安装的方法运行是:

  1. 使用 exe 文件下载并安装 Ghostscript
  2. 使用 exe 文件下载并安装 imagemagick - 确保将路径添加到环境变量。您可能不需要这一步,但我想使用 Imagemagick 无论如何,我是我的网站和我的电脑。
  3. 下载 Imagick dll 文件并将其放在推荐的文件夹中 - 我现在不记得是哪个了。
  4. 取消注释 php.ini 文件中的 Imagick 选项。我有 我的系统上有两个或三个 php.ini 个文件,我在每个文件中都这样做了。
  5. 关闭计算机并重新启动。开始 XAMPP 并且成功了。

这只适用于几次安装,当我升级操作系统时,由于 php 和 Imagick.dll 的版本不兼容,我无法让它工作。如果我想使用 Imagick,我会在我的服务器上使用它,因为主机已经为我安装了它。 您仍然可以在本地编写代码并在生产服务器上对其进行测试。这有点痛苦,但可能 quicker/easier 比尝试让 Imagick 在您的 PC 上工作。

出于兴趣,我放弃了它并使用带有 exec() 和命令行的 Imagemagick。