0

嗨,我正在使用回形针保存图像,我的模型如下

   class Image < ActiveRecord::Base
 has_attached_file :snap, :styles => {:banner => "950x505", :large => "1200x1200", :medium => "363x569"}
     belongs_to :product
   end

如果我上传 200x200 的图像并使用大尺寸的图像标签显示图像,则图像很奇怪并且被拉伸。

如果我遵循这个模型代码

     class Image < ActiveRecord::Base
 has_attached_file :snap, :styles => {:banner => "950x505#", :large => "1200x1200#", :medium => "363x569#"}
     belongs_to :product
   end

意思是用“#”符号表示图像的大小并显示大图像。然后图像没有被拉伸,而是从上部或底部切出一些部分。

我怎样才能上传完美契合的图像,而不会从任何一侧拉伸或裁剪?

4

3 回答 3

2

请你试试这个

http://www.webresourcesdepot.com/jquery-image-crop-plugin-jcrop/

于 2012-06-06T12:04:45.287 回答
0

如果您上传低分辨率图像并尝试放大它,很明显图像会失真或像素化。更好的选择是上传最高分辨率的图片(在您的情况下可能是 1280 像素,然后应用您已有的样式。

于 2012-05-24T09:00:37.680 回答
0

好吧,如果你尝试:

class Image < ActiveRecord::Base
  has_attached_file :snap, :styles => {:banner => "950x505>", :large => "1200x1200>", :medium => "363x569>"}
  belongs_to :product
end

IIRC,它将按比例缩小任何图像以适合指定的范围,而不进行裁剪,并保留较小的图像,因为它们已经适合指定的范围。

我用:

class Image < GenericModel
  has_attached_file :asset, :styles => {:fit => "800x600>", :thumb => "100x100>"}
  blah blah blah
end

指定“适合”和“拇指”版本。

如果上传的图像是 400 x 300 的纵向,则“拇指”将为 100 高和 75 宽以保持比例。如果图像为 300 x 400,则“拇指”为 75 x 100。

“适合”也不会拉伸较小的图像,图像保持在 400 x 300(反之亦然)。

于 2012-06-01T17:06:14.183 回答