今天我尝试在我的xampp中安装imagick
一百次。我做到了。如果您遇到麻烦,请尝试按照以下步骤操作:
Win32 dynamic at 16 bits-per-pixel
。C:\imagemagick
安装Image Magick。5.x Thread Safe (TS) x86
。 5.x中的x是PHP的版本。php_imagick.dll
放入xampp安装的php / ext文件夹中。extension=php_imagick.dll
php
(start-> cmd)),您将收到错误消息。如果该错误说的是这样的话:Unable to find the entry point for the procedure FlattenImages in the DLL CORE_RL_magick.dll
这意味着你正在顺利进行。php_imagick.dll
覆盖您下载的DLL。所有这些都以前缀CORE_RL_
开头。php
。如果不说某些东西意味着想象力是功能性的(你可以签入localhost/xampp/ > phpinfo() link
。我个人必须安装一个新的DLL:vcomp110.dll
。
如果有人遇到与我相同的错误(系统找不到vcomp11.dd
)download it here 现在,如果您尝试在控制台上激活php
,或者只是初始化xampp的apache模块,那么您应该没有错误。
编辑:当在控制台中尝试convert some-img.bmp some-result.jpg
时,我遇到了这个错误:
convert.exe: unable to open module file 'C:\Users\my-acc\.magick\IM_MOD_RL_BMP_.dll': No such file or directory @ ...
当.magick
中没有文件夹my-acc
时会发生这种情况。你需要做的是:
在.magick
文件夹中创建名为my-acc
的文件夹。由于名称以停止开头,因此您需要通过控制台创建它。以下是命令:
1.1。 c:
1.2。 cd Users\my-acc
1.3。 mkdir .magick
C:\imagemagick\modules\coders
并将整个文件复制到创建的最新文件夹中。现在,您将可以通过命令或PHP类使用Image Magick。
在背景上,如果你使用Codeigniter,我不知道如何在imagick中使用image_lib。因此,使用自己的想象类更好。这是一个简单的例子:
$image = new Imagick($upload_data['full_path']);
$image->thumbnailImage(250,0);
if($image->writeImage($upload_data['file_path'].$upload_data['raw_name'].'_thumb'.$upload_data['file_ext'])){
something here;
}
$image->clear();
答案 0 :(得分:4)
这个答案可能非常天真,但是,我发现在Windows中完成工作通常太痛苦了。很多人都同意这一点,并在一个名为" chocolatey"的工具中找到了安慰。
首先,在您的Windows机器上安装chocolatey(超级简易安装说明):
然后,使用chocolatey来安装你需要的所有其他东西(在这种情况下是imagemagick):
https://chocolatey.org/packages/imagemagick
我怀疑在此之后您可能需要对配置文件进行一些小的调整,并处理所有" Windows权限"需要让事情顺利进行。权限可以像"完全控制"一样简单(并且不一定安全)。对某些用户,加上激活继承并覆盖所有子设置以使用继承。
简而言之,安装,配置,权限,转发。
PS。这个答案可能不完整/原型/实验,因为我不会在Windows上运行codeigniter,php,imagemagick。
答案 1 :(得分:0)
Winderfind的这个方法很棒,但对我来说,解决所有问题还不完整。首先,看看这个教程: http://hrt0kmt.hatenablog.com/entry/2015/05/27/170608
其次,我发现并非所有版本的ImageMagick都适用于所有版本的php_imagick.dll。在此帖子上查看我和其他人的答案,以便进一步排查问题: ImageMagick supported formats no value