1

アップロードされた画像の幅を 100% に保ち、高さだけを幅の 60% にトリミングするには、ペーパークリップ スタイルをどのように記述すればよいでしょうか?

このようなもの:

has_attached_file :image, :styles => { :cropped => "100%x[60% of height]" }
4

2 に答える 2

1
has_attached_file :image, :styles => after_save :save_image_dimensions

def save_image_dimensions
  geo = Paperclip::Geometry.from_file(image.path)
  self.image_height = (geo.height.to_i * 60)/100 
end

ディメンションの抽出に問題がある場合は、以下から適切なヘルプを得ることができます

https://github.com/thoughtbot/paperclip/wiki/Extracting-image-dimensions

ペーパークリップを使用して画像をトリミングするには、このリンクを参照してください

http://viget.com/extend/manual-cropping-with-paperclip

ありがとう

于 2013-08-09T06:05:47.293 に答える
1
has_attached_file :image, :styles => { 
                      :original  => "100x60>",
                      :thumb => Proc.new { |instance| instance.resize }
                    }
  #### End Paperclip ####

  def resize     
     geo = Paperclip::Geometry.from_file(image.to_file(:original))
     height = (geo.width.to_i * 60)/100
     width = geo.width     
     "#{width.round}x#{height.round}!"    
  end  

これがあなたを助けることを願っています

于 2013-08-09T06:10:14.287 に答える