从PDF中提取嵌入的图像

在我开始使用Ubuntu之前,我使用Nitro PDF阅读器自动从PDF文件中提取图像。 是否有用于Linux的PDF阅读器?

我希望能够比拍摄快照时更快/更容易地提取图像。

使用pdfimages

pdfimages是一个PDF图像提取工具,可将PDF文件中的图像保存为PPM,PBM,JPEG或JPEG 2000文件格式。

它是poppler-utils包的一部分,您需要安装它。

用法: pdfimages [options]

示例:以下内容从PDF文件中提取所有图像,并以JPEG格式保存。

 pdfimages -j in.pdf /tmp/out 

将PDF文件in.pdf中的图像保存在文件/tmp/out-000.jpg (或/tmp/out-000.pbm ;见下文),/ /tmp/out-001.jpg等。


pdfimages 手册页说明:

 -j: Normally, all images are written as PBM (for monochrome images) or PPM for non-monochrome images) files. With this option, images in DCT format are saved as JPEG files. All non-DCT images are saved in PBM/PPM format as usual. 

我经常使用Inkscape。 加载页面,并删除所有其他东西。 优点是您可以在SVG中获取矢量图像并根据您的选择进行修改。

您也可以尝试pdfmod。 它是一个GUI(图形界面),可以提取图像和进行其他基本的PDF操作。

我有一个双列PDF文件,其中包含使用LaTeX创建的嵌入图像,其中原始图像以EPS格式提供。 我尝试了基于pdfimages的建议解决方案,但不幸的是,它没有返回任何图像。 然后我尝试使用Inkscape,但它生成的SVG图像是扭曲的,我没有运气将它们作为EPS输出。

适用于我们的软件是MasterPdfEditor 。

这是程序

  • 使用Master PDF Editor打开文件
  • 使用编辑工具 (Alt + 1)选择需要提取的图像
  • 复制图(Ctrl + C)
  • 单击图像周围的虚线框,然后检查右侧边栏(Object Inspector)并单击“Geomerty”。 在那里你可以看到你选择的大小
  • 创建一个新文件(Ctrl + N)。 它会提示您提供页面大小。 提供图像的确切大小并创建新文件
  • 现在有点棘手:粘贴图像(Ctrl + V)。 图像可能不会显示在新文件中。 使用箭头移动它直到您能够跟踪它。
  • 使用箭头将图像置于新页面的中心
  • 另存为PDF

结果是质量非常高,但软件不是免费的。 有一个演示版本“允许您尝试所有function”,但附带“在输出文件上添加水印”。 坦率地说,我没有注意到制作的PDF中有任何水印。

我使用pdfimages这是一个命令行工具,它对我很有用。 它非常易于使用,您可以使用–help选项来了解有关其用法的更多信息。 我使用Ubuntu并预先安装。 如果你的pdf文件是加密的或受密码保护的,那么有一些选项,所以这个工具很有用。 您可以在此处阅读有关pdfimages的更多信息

如果您需要的是pdf / eps格式的裁剪图像,则使用pdfmod提取包含图像的页面(如待办事项所示)。

然后使用pdfcrop您可以通过反复试验正确设置边距:

 pdfcrop --margins "-15 -50 0 -140" extracted_page.pdf 

对于pdfimages,提取的图像可以是两个或更多个部分。 将这些部件重新组合在一起并且无需担心提取格式的简单方法是将部件导入LibreOffice Draw,使用图像裁剪对话框裁剪,定位部件,调整页面大小并以您喜欢的任何格式导出。

如果您想使用pdfviewer从pdf中裁剪图像,可以尝试使用okular。 它可以以png或jpeg格式裁剪任何内容(文本或图像)。 如果要从pdf中提取png格式的图像,可以使用pdftohtml的最小命令来完成。 它将pdf转换为html加图像。 在这里您可以找到一个示例 – https://www.youtube.com/watch?v=CG1rf7k3xo8 。 如果你想从pdf中提取许多图像,我建议你试试这个。

使用的软件:Xreader OS:Antergos

脚步:

  1. 打开PDF
  2. 右键单击图像
  3. 选择将图像另存为..
  4. 输入文件名和扩展名。
  5. 保存。