如何在配置中为安装在 Windows 机器上的 ImageMagick 库设置 library_path

Posted

技术标签:

【中文标题】如何在配置中为安装在 Windows 机器上的 ImageMagick 库设置 library_path【英文标题】:How to set library_path in config for ImageMagick library which is installed in windows machine 【发布时间】:2018-03-31 18:25:04 【问题描述】:

我在尝试使用 ImageMagick 裁剪图像时遇到以下错误 图书馆:

图像处理失败。请验证您的服务器是否支持所选协议以及您的图片库路径是否正确

所以该库安装在我的 windows 机器上的程序文件(x 86)文件夹中。

我已经设置了这样的配置:-

$config['image_library']  = 'ImageMagick';<br>
$config['library_path'] = 'C:\\ImageMagick\\Program Files (x86)\\';

我把$config['library_path']设置错了,请注意环境变量如下:-

路径 : -- C:\Program Files (x86)\ImageMagick

【问题讨论】:

在 Windows 上使用 Imagemagick 多年后,我再也不用设置任何路径了。如果您只是使用 exe 文件并允许它添加 Imagemagick 到环境路径,一切都应该很好。我建议你卸载你有的,然后再试一次 您安装了哪个版本的 Imagemagick? IM 6 还是 IM 7?如果 IM 7,那么它使用命令 magick 而不是转换。所以这可能会导致问题。 嘿,布莱恩,你不需要在 codeigniter 中通过 Imagemagick 为图像裁剪设置库路径吗? 【参考方案1】:

正如@fmw42 所指出的 - 检查您的 ImageMagick 版本,以及您的 image_lib.php 正在执行的命令。

我的 Codeigniter 版本中的 image_process_imagemagick() 函数尝试执行 convert 命令。在 ImageMagick 7 中,这应该是 magick

理想情况下,更新您的 CI 版本(我认为这在较新的版本中已修复)。

不建议使用的更快解决方法是编辑 image_process_imagemagick() 方法中的 $this->library_path var 以读取 magick,而不是 convert

if ( ! preg_match('/magick/i', $this->library_path))
    
        $this->library_path = rtrim($this->library_path, '/').'/magick';
    

【讨论】:

以上是关于如何在配置中为安装在 Windows 机器上的 ImageMagick 库设置 library_path的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Windows 上的 git 配置中修复“ssh 权限被拒绝,请重试错误”

如何在 Windows 7 上的 C++ 中为虚拟文件夹创建快捷方式?

如何在 Windows 上的 xampp 中为 QCubed 项目创建虚拟主机?

如何在 python 中为 64 位机器创建安装程序?

如何配置 Windows 10 OpenSSH 客户端窗口大小

windows安装composer