编辑:此过程适用于Windows 7 - 10和所有版本的PHP。
非官方网站可能会停止服务或后续被更改以包含恶意代码。请谨慎使用除评论或其他答案中提供的官方ImageMagick、PECL或PHP站点之外的任何推荐链接或镜像。
我无法使用旧版ImageMagick来使Imagick与PHP配合,就像最初被接受的答案那样,并且很难找到具有所需安全二进制文件的精确镜像 (最初被接受的答案镜像上下载的二进制文件与所列版本不同)
在下面的所有步骤中,请务必将您的PHP体系结构(x86 / x64和NTS / TS)与二进制文件的体系结构匹配。如果您使用的是PHP x86-请将x64版本的下载替换为x86(或32位)版本。相同的规则也适用于Thread-Safe(TS)和Non-Thread-Safe(NTS)版本的PHP。
PHP Imagick扩展
- 转到https://pecl.php.net/package/imagick并下载最新的DLL
(3.3.0RC1)
。
![Imgur](https://i.imgur.com/Fc938It.png)
- 将
php_imagick.dll
提取到D:\php5.6\ext
- 将所有
CORE_RL_*.dll
文件提取到D:\php5.6
-
- 确保已将
D:\php5.6
添加到您的系统环境变量的PATH
中
将extension = php_imagick.dll
添加到D:\php5.6\php.ini
中
重新启动Apache、PHP-FPM或PHP内置Web服务器
检查phpinfo();
以确保模块已正确安装
请注意突出显示的ImageMagick版本 (ImageMagick 6.9.1-2 Q16 x64)
和缺少的支持格式
ImageMagick二进制文件
- (1a)从https://www.imagemagick.org/script/download.php下载并安装与ImageMagick PECL扩展的版本相匹配的ImageMagick到
D:\php5.6\bin
-确保选中添加路径到环境变量
选项或手动添加它![Imgur](https://i.imgur.com/kDj9zqR.png)
- (1b) 或者下载适用于您的Imagick PECL扩展版本的PECL依赖项,有关更多详细信息,请参见下文。
- 加载一个命令提示符(以管理员身份运行,这会强制系统路径变量刷新)并确保
convert --version
显示正确的版本![Imgur](https://i.imgur.com/femOqFg.png)
- 删除之前在
D:\php5.6
中提取的CORE_RL_*.dll
文件(它们将通过ImageMagick路径加载-否则,您的PHP安装可能会因PECL dll而不稳定)
- 重新启动Apache、PHP-FPM或PHP内置Web服务器
- 检查
phpinfo();
确保模块仍然正确安装并正在加载Imagick支持的格式![Imgur](https://i.imgur.com/yA1vnah.png)
Imagick PDF作为图像支持 - Ghostscript(可选)
- 可选择下载和安装Ghostscript到
D:\ php5.6 \ bin
,以便能够从http://sourceforge.net/projects/ghostscript/将PDF转换为图像。 请确保与您的安装架构相匹配
我在使用PHP内置Web服务器或CGI时不需要添加MAGICK_HOME
来使Imagick工作,但是在使用mod_php
的Apache中可能需要。有关详细信息,请参见下面的特殊注意事项部分。
PECL Imagick依赖项(1b)
您还可以从PECL网站http://windows.php.net/downloads/pecl/deps/下载所需的ImageMagick版本依赖项,并直接从bin
目录中提取 exe
和 dll
文件到您的D:\ php5.6
目录。
使用PECL依赖项可以避免直接从供应商网站下载和运行匹配的ImageMagick版本安装程序的需要。
使用PECL依赖项可消除使用GhostScript进行PDF转换时需要的排除文件的问题。
使用PECL依赖项的方法存在一些用于使用GhostScript转换PDF时所需的排除文件的问题。
特殊注意事项
请确保运行PHP的用户具有执行convert
的权限。这应该是通过D:\php5.6\bin
继承的,但如果您选择安装到C:\Program Files
,由于其受限制的权限,可能会出现问题。
请务必重新排列您的PATH
系统环境变量,以便%SystemRoot%\system32\convert.exe
不会覆盖D:\php5.6\bin\convert.exe
。
将您的PHP路径添加到system32左侧,如下所示:PATH: D:\php5.6\bin;%SystemRoot%\system32;%SystemRoot%;...
这将强制系统在%SystemRoot%\system32
之前在D:\php5.6\bin
中查找可执行文件
将 D:\php5.6\bin\convert.exe
替换为ImageMagick安装路径或convert.exe
所在的路径
https://technet.microsoft.com/en-us/library/cc723564.aspx#XSLTsection127121120120