Linux 将多个PDF文档转换为多个图像文件
如何将多页PDF转换为多个JPG或TIFF 当我使用Linux 将多个PDF文档转换为多个图像文件,linux,pdf,imagemagick-convert,Linux,Pdf,Imagemagick Convert,如何将多页PDF转换为多个JPG或TIFF 当我使用 convert "abc.PDF" "abc.JPG" 然后只转换PDF的第一页。是否可以将“abc.PDF”的每一页转换为多个JPG文件?使用convert时,您应该能够轻松地将多页PDF文件转换为多个JPEG(每页一个文件) 下面是一个只处理第1-5页的命令: ([0-4]表示第1-5页。页面索引是基于0的!) 然而,这并没有给你多少关于结果质量的控制。唯一可以添加的是-density 150或-density 300,以提高图像的分
convert "abc.PDF" "abc.JPG"
然后只转换PDF的第一页。是否可以将“abc.PDF”的每一页转换为多个JPG文件?使用
convert
时,您应该能够轻松地将多页PDF文件转换为多个JPEG(每页一个文件)
下面是一个只处理第1-5页的命令:
([0-4]
表示第1-5页。页面索引是基于0的!)
然而,这并没有给你多少关于结果质量的控制。唯一可以添加的是-density 150
或-density 300
,以提高图像的分辨率。(convert
默认情况下使用-density 72
,即72 PPI。)
另外,请注意,ImageMagick无法自行处理PDF。它使用Ghostscript作为“委托”来处理PDF文件。如果将-verbose
添加到命令行,则可以看到:
convert -verbose -density 200 ~/Downloads/PDF32000_2008.pdf[0-4] page-%d.jpg
[....]
[ghostscript library] -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT \
-dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 \
"-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
"-r200x200" -dFirstPage=1 -dLastPage=5 \
"-sOutputFile=/var/tmp/magick-63898lc1DhZVuD6lu%d" \
"-f/var/tmp/magick-63898h8-BZJ59LyhQ" \
"-f/var/tmp/magick-638989MxSe0EALH5F"
因此,在许多情况下,如果您希望将PDF页面转换为图像,则直接运行Ghostscript具有优势…实际上,您使用的
convert
方法应该为每个PDF页面创建一个jpg,请参见例如。所以这里有些奇怪。你的命令应该按原样工作。当我思考为什么只得到第一页时,脑海中浮现的唯一原因是:(1)由于PDF、Ghostscript或ImageMagick中的某些错误,处理在第二页停止。-(2) 您的ImageMagick版本太旧。谢谢您的回答。
convert -verbose -density 200 ~/Downloads/PDF32000_2008.pdf[0-4] page-%d.jpg
[....]
[ghostscript library] -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT \
-dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 \
"-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
"-r200x200" -dFirstPage=1 -dLastPage=5 \
"-sOutputFile=/var/tmp/magick-63898lc1DhZVuD6lu%d" \
"-f/var/tmp/magick-63898h8-BZJ59LyhQ" \
"-f/var/tmp/magick-638989MxSe0EALH5F"