我的布局要求是将所有缩略图保持在80px高度,而不是更高,而不是更小。在我的模型中,我将样式设置为:thumb=> "500x80>"
,因此基本上几乎每张不太宽的图片都能获得80px高度的完美缩小。然而,有时候,我的照片很窄而且很高,因此拇指可能具有像5x80这样的不可点击的尺寸。所以我不想裁剪图片,只要缩略图不会变得疯狂狭窄,但我认为如果拇指的宽度小于25px,我可以做出一点牺牲并裁剪它们。
所以我的问题是 - 在回形针中是否可以设置样式的最小比例,样式将"500x80>"
以及它将变为...... "25x80#"
?
答案 0 :(得分:1)
has_attached_file :img, :styles => {:thumb => [Proc.new { |instance| instance.resize }, :jpg]}
def resize
@geo_original = Paperclip::Geometry.from_file(img.to_file(:original))
ratio = @geo_original.width/@geo_original.height
if ratio < 0.4 or ratio > 1.375
# Image very high or very wide
"110x80#"
else
# Average dimensions
"110x80>"
end
end
答案 1 :(得分:-1)
我不确定如何使用回形针完成此操作 - 感觉应该有一些事情要做它不是吗?
Paperclip只是在后台使用imagemagick(http://www.imagemagick.org/Usage/resize/#shrink)你可以在夜间使用图像魔法来制作那些讨厌的窄图像。
这是一个黑客,但我能提供最好的主意。
祝你好运。