【问题标题】:Rmagick Fails To Manipulate PNGRmagick 无法操作 PNG
【发布时间】:2012-10-23 04:43:18
【问题描述】:

关注CarrierWave 上的 Railscast 剧集:

我通过自制软件在Mountain Lion上安装了ImageMagick,导出如下路径:

export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:$PKG_CONFIG_PATH"

符号链接如下:

ln -s /usr/local/include/ImageMagick/wand /usr/local/include/wand
ln -s /usr/local/include/ImageMagick/magick /usr/local/include/magick

并通过捆绑器安装rmagick

在我的uploader 我有以下内容:

include CarrierWave::RMagick
version :thumb do
     process :resize_to_limit => [85, 85]
end

这可以很好地创建缩略图,但不适用于png 文件。我尝试了一些png 图像,但总是失败并出现此错误:

 Failed to manipulate with rmagick, maybe it is not an image? Original Error: no decode delegate for this image format `<path>/public/uploads/tmp/20121022-2133-9885-3333/thumb_cat_vs_internet.png' @ error/constitute.c/ReadImage/544

jpeg 图片工作正常。

编辑

identify -list format | grep -i png 不返回任何内容,表示可能缺少 png 解码委托。现在呢?

【问题讨论】:

  • 运行identify -list format会得到什么?也许 png 代表确实不见了……
  • @PinnyM - 好猜测。更新了问题,但似乎没有 PNG 代表。有什么想法可以修改吗?
  • 卸载/重新安装是您可以采取的最好的第一枪......
  • 第一次卸载/重新安装不起作用...我会尝试更新自制软件并再次安装
  • 好电话。进行了自制更新,但后来它起作用了。如果您想将您的评论变成答案,我会接受。谢谢!

标签: ruby-on-rails imagemagick carrierwave rmagick


【解决方案1】:

确定未安装 PNG 代理后(使用 identify -list format),您应该尝试卸载/重新安装 ImageMagick,因为安装程序可能遗漏了某些内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    相关资源
    最近更新 更多