
У меня много картинок. Я собираюсь изменить их размер из командной строки в футах, или, если это невозможно, в дюймах.
Я знаю, что существуют графические приложения, которые могут это сделать, но они работают только по одному, и на выполнение этой работы уходит время!
Я попробовал Convert -resize
команду, но она только в пиксельном формате, и когда я проверяю в Inkscape, этот размер не тот, что мне нужен.
Как я могу это сделать?
решение1
Файлы изображений, такие как jpeg или png, хранят только дискретные пиксели. Длина 10 пикселей — это чисто вопрос соглашения или использования. Если вы отобразите пиксели на старом мониторе с разрешением 70 точек на дюйм, 10 пикселей составят 1/7 дюйма. Если вы распечатаете пиксели на принтере с высоким разрешением 1200 точек на дюйм, 10 пикселей составят всего лишь 1/120 дюйма.
Поэтому прежде чем говорить об изменении размера в терминах реальных единиц измерения, таких как футы или метры, вам нужно исправить (сделать поддельное) разрешение.
Тогда есть еще два способа изменить размер. Просто представьте, что у них другое разрешение. Или пусть программа вроде ImageMagick вычислит другое количествопикселипритворяясь, что они сохраняют разрешение. В конце концов, изменение размера всегда означает изменение количества пикселей, независимо от того, делаете ли вы это явно или ваша программа отображения или печати делает это «под капотом», чтобы втиснуть исходное количество пикселей в заданный размер кадра.
решение2
Я понял, как изменить размер!
Сначала проверьте информацию об изображении:
$ identify -verbose file.jpg
Geometry:
Resolution:
Print Size (inch):
Geomtry=Print Size X Resolution
Тогда сделай
convert -resize XxY! file.jpg output.jpg