我想将文件夹的所有pdf转换为png图像,就像我在文件夹名称test1.pdf和test2.pdf中有两个pdf,然后它应该生成test1-1.png,test1-2.png ,test2-1.png,test2-2.png。 我正在使用这个命令行,我应该放置什么而不是'# - %d.png'?
gs -dNOPAUSE -dBATCH -sDEVICE = png16m -sOutputFile =“/ var / www / pdf_png / pdfs /# - %d.png”/ var / www / pdf_png / pdfs / * .pdf
答案 0 :(得分:2)
你不能单独使用Ghostscript,你需要编写一个shell脚本来调用每个源文件上的Ghostscript。
此question中包含一个脚本,您可以根据自己的需要进行调整
答案 1 :(得分:1)
find . -type f -iname "*.pdf" -exec sh -c 'gs -dNOPAUSE -dBATCH -sDEVICE=pngalpha -r300 -sOutputFile=$1.png $1' x {} \;
注意:这仍然会输出FILENAME.pdf.png
,但是...这只是一个衬纸...
find
命令查找所有pdf
文件,并通过sh
将它们传递到-exec
{}
代表文件名,但是为了在命令中使用两次,必须将sh -c
技巧作为位置参数来传递x
作为$0
参数传递,因为常规上$0
是shellname \;
是用于表示命令结束的字符