Как создать квадратный / обрезанный эскиз с помощью ImageMagick? Обрезка как ниже.
источник
Как создать квадратный / обрезанный эскиз с помощью ImageMagick? Обрезка как ниже.
Это объясняется в официальной документации ImageMagick под заголовком «Вырежьте миниатюру до нужного размера» :
Альтернатива, вместо того, чтобы раскладывать изображение, чтобы оно соответствовало требуемому размеру миниатюры, состоит в том, чтобы вместо этого отрезать части изображения, которые не соответствуют окончательному размеру.
Конечно, это означает, что вы на самом деле теряете некоторые части исходного изображения, особенно края изображения, но в результате вы получаете увеличенный эскиз центральной части изображения. Это обычно (но не всегда) основной предмет изображения, поэтому это практичный метод создания миниатюр.
Начиная с IM v6.3.8-3 был добавлен специальный флаг опции изменения размера '^', чтобы сделать это проще. Мы просто изменяем размеры, используя этот флаг, затем обрезаем части изображения, которые переполняют желаемый размер.
И в контексте примера команды:
convert -define jpeg:size=200x200 hatching_orig.jpg -thumbnail 100x100^ \
-gravity center -extent 100x100 cut_to_fit.gif
Ignacio ссылается на правильную документацию, однако для удобства я вставлю ее здесь:
Аналогично, следующее для GraphicsMagick:
Объяснение:
-size 200x200
говорит декодеру jpeg, что нам нужно только это разрешение, чтобы оно могло экономить память и быстрее читать исходное изображение-thumbnail 100x100^
быстрое изменение размера делает самую короткую сторону 100- gravity center
центрировать следующую операцию-extent 100x100
применить изображение к холсту 100x100+profile "*"
не сохраняйте метаинфо в jpeg (уменьшая полученное изображение)источник
Это более простой способ сделать это:
Следующая команда изменяет размер меньшей стороны до 100 пикселей и обрезает квадрат 100x100. Вы можете добавить
-strip
команду, чтобы уменьшить размер файла.В отличие от других, он не пытается сохранить память. Вместо этого он делает то, что вы хотите, и не более. Плюс, это не улучшит изображения.
источник
Я использую graphicsmagick для создания миниатюр точного размера, но вместо обрезки выступа я добавляю изображение в шахматную доску.
Варианты объяснены.
источник
Я думаю, что вы ищете что-то вроде:
где
100x100
есть размер конечного прямоугольника и смещения .50x50
источник
convert -thumbnail 100x100+50+50 input_image.jpg output_image.jpg
, для получения дополнительной информации проверьте ответ Игансио Васкеса для примера или проверьте документациюЭта команда обрезать до квадрата, а затем изменить размер до 150x150
Дополнительные параметры доступны здесь: http://www.imagemagick.org/Usage/thumbnails/#square
источник