JPEG的背景颜色,同时使用ImageMagick / Paperclip保持PNG的透明度

时间:2012-09-27 23:04:19

标签: ruby-on-rails imagemagick paperclip

我使用Paperclip调整Rails应用中的照片大小。其中一些不是方形图片,因此添加了边框。我希望PNG图片保持透明背景,而JPEG图片则保持红色背景。

使用-background transparent选项似乎可以正常使用PNG,但会为JPG添加黑色边框。

添加-fill red选项as recommended并没有太大变化,仅使用-background red可以处理JPEG,但也会使PNG背景变红。

我想知道我在这里失踪了什么。或者有没有办法根据输入文件格式有条件地传递选项?

我使用的命令行是:

convert original.jpg -resize "200x200" -background transparent -fill red -gravity center -extent 200x200 result.jpg

1 个答案:

答案 0 :(得分:0)

我会尝试从Paperclip::Processor派生自定义处理器,并使用make方法修改每个案例的设置,然后运行super。看看http://rdoc.info/github/thoughtbot/paperclip/Paperclip/Processor