如何使用Ghostscript或ImageMagick从PDF中提取图像



我需要从特定的PDF文件中呈现或获取所有图像。我如何使用Ghostscript或ImageMagick实现这一点?

您不能使用Ghostscript,但您可以使用Poppler或XPDF的命令行工具pdfimages:

pdfimages -j some.pdf subdir/image-prefix

所有的图像现在将位于subdir/命名为image-prefix-0001.jpg, image-prefix-0002.jpg

-j 参数将使命令尝试直接提取jpeg。如果不能创建jpeg,它将创建png或png,您可以使用ImageMagick转换它们:

convert subdir/image-prefix-0033.ppm subdir/image-prefix-0033.jpeg

你当然不能在Ghostscript中这样做,除非你自己编写一个Ghostscript设备。
我怀疑你也可以用ImageMagick做到这一点。
你看过PDFtk吗?

如果你使用的是Windows操作系统,那么在Google上快速搜索一下:

http://www.somepdf.com/some-pdf-image-extract.html

在Linux上:

https://askubuntu.com/questions/150100/extracting-images-from-a-pdf

ImageMagick还提供了使用以下语法将pdf转换为图像的选项:

convert /path/to/file.pdf /path/to/output/file.png

除了"常规"它提供了许多有用的转换选项,如:

  • 只提取几个页面(通过在PDF文件名后添加[0-n],例如convert "file.pdf[0-1]" /path/to/output/file.png)
  • 使用PDF文档-define pdf:use-cropbox=true中定义的裁剪框
  • 改变输出密度DPI -density 300
  • 缩放图像到一定的大小,例如,最大2000x2000px与-resize 2000x2000>
  • 使用-background white设置pdf文件的背景色
  • 删除alpha通道-alpha remove -alpha off

示例提取1页:

gs -q -dBATCH -dNOPAUSE -sDEVICE=pnggray -d300 -dFirstPage=1 -dLastPage=1 -sOutputFile=1.tiff in.pdf

相关内容

  • 没有找到相关文章