Я хочу создать bash-скрипт, который может выполняться из любого места, который делает следующее:
Он создает изображения из pdf-файла, используя pdftoppm
:
pdftoppm fileinput.pdf -png img -r 305.3
После того, как все изображения png есть.
Обрезает все изображения png 10 1920x1080, используя mogrify
:
mogrify -crop 1920x1080 + 2 + 2 * .png
Короче говоря, я хочу создать сценарий bash, который будет выполняться:
pdftoppm inputfile.pdf -png img -r 305.3 && mogrify -crop 1920x1080+2+2 *.png
Это будет похоже на:
./mybashscript inputfile.pdf
И после того, как я запустите сценарий выходные изображения png будут уже обрезаны до 1920x1080.
Примечание: я знаю, что могу установить размер выходных изображений, изменив значение -r в pdftoppm. Но я не хочу менять это по причине.
Вы можете разделить эти задачи и выполнить все задачи 1 сначала (создать файлы изображений из pdf), а затем все задачи 2 (изменить размеры изображений). Пример того, как просматривать и изменять размеры изображений, см. В https://stackoverflow.com/questions/14304480/batch-resize-images-and-output-images-to-new-folder-with-imagemagick
Обновление: так что я не использовал pdftoppm
, поэтому вам придется уточнить эту часть вашего сценария самостоятельно, но, похоже, эта часть у вас может быть отключена. Вот некоторый стартовый код:
pdftoppm $1 -png img -r 305.3
magick mogrify -resize 1920x1080 *.png
Дополнительная информация о передаче аргументов в скрипт . Затем убедитесь, что вы сохранили и поместили этот скрипт в вашу переменную PATH, чтобы вы могли выполнить его из любого места. Обратите внимание, что более надежный скрипт будет иметь проверку ошибок (например, убедитесь, что вы передали входные файлы).