在rails3中上传图像的动态图像大小

时间:2011-03-08 10:43:25

标签: ruby-on-rails ruby-on-rails-3 image-processing

在rails中,paperclip有一个固定的(基于模型)图像大小的定义。

has_attached_file :data,
 :styles => { :large => "800x600>", :icon => "50x50#" }, 
 :path => ":rails_root/public/images/files/:id/:style/:basename.:extension", 
 :url => "/images/files/:id/:style/:basename.:extension", 
 :convert_options => { :all  => "-colorspace RGB" }, 
 :whiny_thumbnails => true

但是此示例将图像尺寸设置为2种固定尺寸的2种类型(大图标)。这对于大多数问题都很好,但如果你想以不同的尺寸显示上传的图片,则不是这样的,例如640x480 ......

有没有办法让图像在运行中缩放 - 在rails3 ???

2 个答案:

答案 0 :(得分:1)

您可以查看Dragonfly之类的内容来处理图片而不是Paperclip。它将大小调整放在视图中而不是模型中,并利用一些缓存机制来帮助提高性能。

答案 1 :(得分:0)

动态缩放图像可能会导致您的服务器崩溃;)

如果你只想显示图片,也许你可以使用html图片标签的宽度和/或高度属性?