使用file_column调整图像大小 - 使用Rails丢失图像质量

时间:2011-07-18 06:57:38

标签: ruby-on-rails imagemagick rmagick

我正在使用file_column在我的脚手架中上传图片。 :

我的代码示例:

file_column :name, :magick => {
                              :versions => {"iphone" => "1024x768", "thumb" => "60x60"},
                              :attributes => { :size => 100, :quality => 100 } 
                            }

但它运作不正常。如果我上传500 Kb - 1 Mb的图像我的结果“iphone”图像大小只有20-30 KB,图像非常模糊。高质量3MB的图像,也有同样的问题。在这种情况下,图像的质量也很差。

1 个答案:

答案 0 :(得分:0)

我不知道问题是什么,当我将"iphone"更改为:iphone时,代码有效(即将版本哈希的键从字符串变为符号)。工作代码如下所示:

file_column :name, :magick => {
                              :versions => {:iphone => "1024x768", :thumb => "60x60"},
                              :attributes => { :size => 100, :quality => 100 } 
                            }

在之前的情况下,它首先将图片大小调整为thumb大小,然后将thumb图片的大小调整为1024X768大小,我猜(因此质量下降)。虽然非常奇怪。