在跟 CarrierWave 相关的 Railscast 集数(第 253 集)之后:
我通过 Homebrew 在 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
我通过bundler安装了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