Почему обрезка ведет себя так? - PullRequest
3 голосов
/ 14 апреля 2011

У меня есть изображение с размерами 126x75:

(rdb:1) p image.width
126
(rdb:1) p image.height
57

Теперь я хочу обрезать его до 50x50, начиная с северо-запада (верхний левый угол). Поэтому я попробовал это (что должно быть похоже на параметр геометрии командной строки IM 50x50+0+0):

image2 = image.process(:crop, :width => 50, :height => 50, :x => 0, :y => 0)

Но результат меня несколько удивляет:

(rdb:1) p image2.width
24
(rdb:1) p image2.height
16

Почему так происходит? Какой правильный путь?

1 Ответ

3 голосов
/ 21 апреля 2011

Похоже, что изображение, которое вы используете, имеет существующую геометрию страницы, которая вызывает смещение вашего (0,0) местоположения. Вы можете указать IM изменить изображение, чтобы удалить существующую геометрию страницы, чтобы (0,0) было «истинно» (0,0). Проверьте документацию IM: http://www.imagemagick.org/Usage/crop/#crop_page

...