我正在使用 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 绘图手动获取这样的图形。两者的过程是相同的:
- 打开 PDF
- 选择图形的区域
- 复制到剪贴板(Ctrl + C)
- 获取新文档(Ctrl + N)
- 粘贴(Ctrl + V)
- 移至左上角并调整页面大小(Inkscape 可以自动执行这两项操作:Ctrl+Shift+R)
- 绘图:导出/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 的创始人,但该工具是免费的,并且将永远保持免费。