根据Paperclip中的样式调整missing.png的大小

3
我将使用Paperclip来上传图片。
以下是我的Paperclip配置:
has_attached_file :avatar, 
                    :path => ":rails_root/public/users/:id/avatar/:style/avatar.jpg",
                    :url => "/users/:id/avatar/:style/avatar.jpg",
                    :default_url => "/missing/users/:style/missing.png",
                    :styles => {"47x47" => "47x47", "228x228" => "228x228","185x176"=>"185x176","pitch_planner"=>"262x129!"},
                    :convert_options => {"47x47" => "-background black -gravity center -extent 47x47",
                      "228x228" => "-background black -gravity center -extent 228x228","185x176" => "-background black -gravity center -extent 185x176"}

如果我想根据“style”生成一个缩放的missing.png图像,该怎么做呢?如何在paperclip中实现?

一种方法是手动调整图像大小并将其存储在pitch_planner文件夹或您想要调整大小的任何样式文件夹中。

是否可以通过编程方式通过paperclip来完成呢?

1个回答

0
不是使用纸夹,但您可以覆盖查找默认图像的方法,并使用ImageMagick创建它(如果尚未存在)。
img = Magick::Image::read(default_image).first
img.resize_to_fit(75, 75)
img.write 'path'

我知道这是一个选项,我已经为它编写了一个脚本。如果你不知道,Paperclip内部使用ImageMagick来实现。考虑到你指出在Paperclip中不可能实现,我仍在考虑你的答案。 - Viren

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接