我想创建一个可以从任何地方执行的 bash 脚本,它执行以下操作:
它使用以下方法从 pdf 文件创建图像
pdftoppm
:pdftoppm 文件输入.pdf -png img -r 305.3
在所有 png 图像都存在之后。
它使用以下方法裁剪所有 png 图像 10 1920x1080
mogrify
:mogrify -裁剪 1920x1080+2+2 *.png
简而言之,我想创建一个执行以下命令的 bash 脚本:
pdftoppm inputfile.pdf -png img -r 305.3 && mogrify -crop 1920x1080+2+2 *.png
它会是这样的:
./mybashscript inputfile.pdf
运行脚本后,输出的 png 图像将被裁剪为 1920x1080。
注意:我知道我可以通过更改 pdftoppm 中的 -r 值来设置输出图像的尺寸。但由于某种原因,我不想改变它。
答案1
您可能希望将这些任务分开,先完成任务 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 中,以便您可以从任何地方执行它。请注意,更强大的脚本会进行错误检查(例如,确保您传入了输入文件)。