pdfimages 不会提取所有图像

pdfimages 不会提取所有图像

我正在使用 pdfimages 从PDF文件。我数了一下,最后有10张图片。但程序只能提取 4 个。

pdfimages -all file.pdf i

生成

-rw-rw-r--    1 victor victor   61389 Jul 14 21:48 i-000.png
-rw-rw-r--    1 victor victor      88 Jul 14 21:48 i-001.png
-rw-rw-r--    1 victor victor    5226 Jul 14 21:48 i-002.png
-rw-rw-r--    1 victor victor   95657 Jul 14 21:48 i-003.png

我是否缺少某些设置?

如何提取所有图像?

答案1

Pdfimages 仅支持光栅图像。您在 PDF 中看到的很可能是矢量图形。

我认为没有办法自动提取它们,但您可以使用类似的工具墨景或者LibreOffice 绘图手动获取这样的图形。两者的过程是相同的:

  1. 打开 PDF
  2. 选择图形的区域
  3. 复制到剪贴板(Ctrl + C)
  4. 获取新文档(Ctrl + N)
  5. 粘贴(Ctrl + V)
  6. 移至左上角并调整页面大小(Inkscape 可以自动执行这两项操作:Ctrl+Shift+R)
  7. 绘图:导出/Inkscape:另存为 (Ctrl+Shift+S)

答案2

没有代表投票,但我的答案与上面针对 Inkscape 的回答相同,除了建议使用“文件”->“导出 PNG 图像...”选项来指定图像分辨率。对于纸质地图的 eps 图形(硬拷贝中的 3'×3'),我以质量因子 30 导入到 Inkscape,并以 5000x5000 的分辨率输出以获得良好的结果。而我认为 Ctrl-Shift-S 默认情况下的分辨率相当低。我的特殊情况也导致 LibreOffice 严重崩溃,这是出乎意料的。根据我的经验,目前的 LibreOffice 在其他方面都是非常好的软件。

答案3

我还有一个建议:Semadox 有一个在线工具:https://www.semadox.com/pdf-image-extraction。在那里您可以提取原始分辨率的图像。

免责声明:我是 Semadox 的创始人,但该工具是免费的,并且将永远保持免费。

相关内容