Paperclip Rails 3.2.2不旋转和调整大小

时间:2012-05-22 19:06:40

标签: ruby-on-rails-3 imagemagick paperclip

Paperclip gem 3.0.4

当我在Model中使用平面Paperclip定义时(UserDetail有一个头像):

has_attached_file :avatar, :styles => {:medium =>  "300x300>", : :thumb => "64x64#" }

所有图像都以正确的比例创建。

当我通过lambda(http://www.matthuggins.com/articles/rotating-paperclip-image-attachments-in-rails)使用自定义处理器时:

has_attached_file :avatar, :processors => [:rotator], :styles => lambda { |a| {
  :thumb => { :geometry => '64x64#', :rotation => a.instance.rotation, },
  :medium => { :geometry => '300x300>', :rotation => a.instance.rotation, },  } }

图像旋转指定的数量,但所有图像的尺寸和比例与原始图像保持相同。

是:几何是正确的参数吗?在Paperclip的更高版本中是否有所改变(我不确定Web示例中使用的Paperclip版本)?

感激地收到任何指针

此致

彼得

1 个答案:

答案 0 :(得分:0)

每个风格一个proc:

has_attached_file :avatar, 
  :processors => [:rotator], 
  :styles => {
    :thumb =>  Proc.new { |a| { :geometry => '64x64#', :rotation => a.instance.rotation } },
    :medium => Proc.new { |a| { :geometry => '300x300>', :rotation => a.instance.rotation } } 
  }