Заставить GraphicsMagick изменить размер изображения до определенной ширины

Заставить GraphicsMagick изменить размер изображения до определенной ширины

Я выполняю пакетную обработку папки изображений до одинаковой ширины с помощью GraphicsMagick (хотя предполагаю, что то же самое применимо и к ImageMagick):

$ gm convert -resize 1000x in.jpg out.jpg

Но когда я просматриваю некоторые изображения, я получаю 999pxвместо 1000px.

$ gm identify -verbose out.jpg

==> Image: out.jpg
==> Format: JPEG (Joint Photographic Experts Group JFIF format
==>   Geometry: 999x591

Есть ли способ принудительно установить правильную ширину? Я предполагаю, что он делает какие-то оценки, чтобы сохранить пропорции.

решение1

Разобрался, вы используете восклицательный знак, чтобы обеспечить соблюдение выбранного размера. ИзДокументация GraphicsMagick:

Добавьте восклицательный знак к геометрии, чтобы принудительно задать размер изображения точно по указанному вами размеру. Например, если указать 640x480!, ширина изображения будет установлена ​​на 640 пикселей, а высота на 480.

Итак, из примера выше:

$ gm convert -resize 1000x! in.jpg out.jpg

В результате получается изображение шириной ровно 1000 пикселей:

$ gm identify -verbose out.jpg

==> Image: out.jpg
==> Format: JPEG (Joint Photographic Experts Group JFIF format
==>   Geometry: 1000x591

Связанный контент