2011-12-15 114 views
0

像这个我目前在我的Ruby应用程序上传文件(影像)。我需要在上传后调整图像...对于调整图像调整图片大小在轨道上

uploaded_io =参数,请帮助[:分类] [:拇指]

if uploaded_io != "" 
    name = uploaded_io.original_filename 
    if(FileTest.exist?("#{RAILS_ROOT}/public/data/#{name}")) 
    id = Category.maximum('id').to_s 
    id = id.to_i+ 1 
    name =id.to_s+"_"+name 
    end 

感谢

回答

4

如果您的ImageMagick已经安装了 - 然后用ImageScience或MiniMagick相反,它们都使用更少的资源,提高工作效率,并只安装为一个共同的宝石(实际上多一点点安装了imagescience)

imageScience:

ImageScience.with_image("#{RAILS_ROOT}/public/data/#{name}") do |image| 
    image.thumbnail(100) do |thumb| 
    thumb.save <path_to_small_image to be saved> 
    end  
end 

MiniMagick:

MiniMagick::Image.new("#{RAILS_ROOT}/public/data/#{name}").resize "100x100" 
+0

您好感谢......用了Magick是有任何其他宝石原生(有些事情像在PHP中)调整图像大小的方法?我问这是因为在我的系统中安装GEM的一些问题 谢谢 – ramesh 2011-12-17 21:50:01