Rails 5.2 MiniMagick :: Error使用带比例和活动存储的图像变体时

时间:2018-08-06 08:05:23

标签: imagemagick crop ruby-on-rails-5.2

在我的本地计算机上,以下代码从视图正常运行...

image_tag image.variant(combine_options: {resize:"1200", gravity: "Center", crop: "6:3"})

在生产Digital Ocean Ubuntu 16.04时出现错误...

  

MiniMagick :: Error(mogrify -gravity Center -crop 6:3 /tmp/mini_magick20180806-26536-1n7pdkl.jpg因错误而失败:mogrify-im6.q16:无效的几何体'6:3'@ error / geometry.c / ParseGravityGeometry / 1185。):

真的希望有人在这里有一个解决方案,因为通过定义比率的裁剪方法完全可以达到我的目的。

如果我将代码更改为...

image_tag image.variant(combine_options: {gravity: "Center", crop: "1200x800+0+0"})

我没有收到错误,但我也没有得到想要的结果。

我完全不知所措,因为我无法在我的开发环境中复制它。我已将服务器上的ImageMagick和MiniMagick更新为与本地版本相同的版本。想不到还有什么可以尝试的。

2 个答案:

答案 0 :(得分:0)

基于http://www.imagemagick.org/script/command-line-options.php#crop裁剪正在接受几何参数。几何描述如下:http://www.imagemagick.org/script/command-line-processing.php#geometry

我的印象是您的比率应描述为“ 3:2〜”,而不是“ 3:2”

答案 1 :(得分:0)

感谢@ lis2 升级到最新版本的ImageMagick可以解决问题。 如果有人需要,请遵循这里... [https://linuxhint.com/imagemagick-bitmap-images-editor/][1] 可在Ubuntu 18以及14和16上使用。

然后

ssh进入服务器

wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xvf ImageMagick.tar.gz
cd ImageMagick-7.0.*
./configure --prefix=/usr
make
sudo make install
sudo ldconfig /usr/local/lib

以上方法使我无需委托人来解析png和jpeg。 做以下工作...

wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xvf ImageMagick.tar.gz
cd ImageMagick-7.0.*
./configure --prefix=/usr
make
sudo make install
sudo ldconfig /usr/local/lib
./configure --enable-shared
make libdir=/usr/lib
sudo make libdir=/usr/lib install
./configure --enable-shared=yes --x-libraries=/usr/lib --without-perl
make
sudo make install

现在,当我确定-version时,我得到... 版本:ImageMagick 7.0.8-12 Q16 x86_64 2018-09-27 https://imagemagick.org 版权所有:©1999-2018 ImageMagick Studio LLC 许可证:https://imagemagick.org/script/license.php 功能:密码DPC HDRI OpenMP 代表(内置):bzlib djvu fftw fontconfig freetype jbig jng jpeg lcms lqr lzma openexr pangocairo png tiff wmf x xml zlib

欢呼 丹