class User < ActiveRecord::Base
has_attached_file :photo, :styles => { :square => "100%", :large => "100%" },
:convert_options => {
:square => "-auto-orient -geometry 70X70#",
:large => "-auto-orient -geometry X300" },
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => ":attachment/:id/:style.:extension",
:bucket => 'mybucket'
validates_attachment_size :photo,
:less_than => 5.megabyte
end
Отлично работает на локальной машине, но выдает ошибку на Heroku: There was an error processing the thumbnail for stream.20143
Дело в том, что я хочу автоматически ориентировать фотографии перед их изменением, чтобы они правильно менялись.
Единственный работающий вариант сейчас (благодаря Джонни) - изменение размера без автоориентации:
...
as_attached_file :photo, :styles => { :square => "70X70#", :large => "X300" },
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => ":attachment/:id/:style.:extension",
:bucket => 'mybucket'
...
Как передать дополнительные параметры конвертации в скрепку на Heroku?
UPD
Я обнаружил, проблема в опции "-автоориента". Похоже, эта опция не работает в версии ImageMagick, используемой Heroku. Я создал специальный обработчик изображений скрепки, унаследованный от стандартного эскиза скрепки:
module Paperclip
class Ao < Thumbnail
def transformation_command
super + " -auto-orient"
end
end
end
Он отлично работает на локальной машине, но не работает на Heroku.