2015-07-02 4 views
0

Я использую плагин JQuery, который позволяет основной обработки изображений: обрезка, поворот, масштабирование и т.д.Dragonfly Imagemagick поворот, чем урожай, чем размер

Я могу повернуть изображение:

image = photo.image.rotate(wrapper.rotate) 

Я могу обрезать изображение

image.thumb("#{wrapper.width}x#{wrapper.height}+#{wrapper.x}+#{wrapper.y}") 

Однако, я не могу найти способ, чтобы изменить размер изображения после обрезки его. В принципе, я хочу запустить:

image.thumb("300x200!") 

еще раз.

Я понимаю, что image.thumb() возвращает работу Dragonfly, возможно ли выполнить другой процесс после обрезки?

Определенный контекст, почему я хочу это сделать: пользователь может перемещаться по определенной области изображения, которая будет видна в контейнере размером 300x200 пикселей. В большинстве случаев изображение больше 300x200 пикселей, поэтому я хочу изменить его размер после обрезки, чтобы уменьшить размер файла.

ответ

1

вместо того, чтобы пытаться сделать это с данными методами, просто использовать .convert и передать нормальное изображение магические аргументы как один одинокий строку например

image.convert("-gravity center -crop '#{wrapper.width}x#{wrapper.height}+#{wrapper.x}+#{wrapper.y}' -resize '300x200!'") 
+0

Отлично! Одна вещь, я должен был избавиться от аргумента -гравитации, чтобы он правильно обрезался – user3023421

Смежные вопросы