如何使用ghodtscript将所有文件夹pdf转换为png

时间:2017-03-17 04:34:53

标签: ghostscript

我想将文件夹的所有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

2 个答案:

答案 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
  • \;是用于表示命令结束的字符