Как получить верхнюю область изображения при обрезке с помощью Rails и Paperclip?
Итак, у меня есть приложение Rails 3, использующее Paperclip для обрезки изображений.
У меня этот код в моей модели для фото:
has_attached_file :thumbnail, PAPERCLIP_OPTIONS.merge(
:styles => {:cropped => '300x250#'})
Полученное изображение, созданное с созданием, создает изображение 300x250, однако, как правило, урожай всегда начинается с хорошего 50px или около того ниже верхней части изображения (не очень хорошо для социальных сетей, когда он отсекает верх головы людей).
Я провел некоторое исследование, и я думаю, что мне нужно предоставить ключ: convert_options, который совпадает с стилем: обрезанный. Тем не менее, я не знаю точно, какие параметры установить (-gravity, -region и т.д.)
У кого-нибудь есть мысли. Я знаю, что есть профессионалы Imagemagick; Я не один, lol.
Спасибо!
Обновление:
Я нашел эту ссылку..
http://forrst.com/posts/Customized_Cropping_with_Paperclip-7g6
Это все еще актуально или у кого-то есть более простой способ?
Ответы
Ответ 1
Здесь мой любимый способ сделать это:
:styles => { :large => "", :medium => "", :thumb => ""},
:convert_options => {
:large => "-gravity north -thumbnail 300x300^ -extent 300x300" ,
:medium => "-gravity north -thumbnail 200x200^ -extent 200x200",
:thumb => "-gravity north -thumbnail 100x100^ -extent 100x100"
}
Обратите внимание, что вместо # вы используете ^ + степень.
Параметры гравитации похожи на карту: север, северо-восток, восток...