无需上传, 100% 本地处理, 无需账户

操作教程

如何从 PDF 中提取嵌入的图片

人们说从 PDF 提取图片,其实有两种完全不同的含义,需要用到不同的工具。本指南讲的是把放进文档里的原始图片文件取出来:设计师放进宣传册的照片、报告里的徽标、合同里的扫描件。这和把每一页转成一张图片并不一样。如果你想要整页外观的快照,包括其中的文字和排版,请改用 PDF 转 JPG 工具。这里的提取器会读取 PDF 中存储的位图对象,按原始分辨率把源图片本身还给你,全程都在你的浏览器中完成。

分步操作

  1. 打开 PDF 图片提取器,把文件拖进去。工具会在本地读取文档,并列出它找到了多少张嵌入的图片。没有任何内容被发送出去:解析就在你自己设备上的浏览器标签页里进行。
    已加载文档的 PDF 图片提取器,显示找到的嵌入图片数量
  2. 让它扫描嵌入的图片对象。它会遍历每一页,收集找到的每张位图,并去除重复的软蒙版副本,这样你就不会拿到同一张图片的两个版本。这里没有页码或格式选项可选:目标是原样返回它们被存储时的样子,而不是重新编码。
  3. 下载结果。单张图片会以一个文件的形式返回;多张图片则会作为各自独立的文件提供下载,按顺序命名排列,保持有序。每个文件都保留它在 PDF 中原有的格式,照片通常是 JPEG,带透明度的图形通常是 PNG。
    提取出的图片已可下载,每张图片一个文件

嵌入图片与整页转成图片的区别

正是这一区别决定了你该用哪个工具。嵌入图片是作者放进 PDF 里的照片或图形;这个提取器会按它被存储时的样子、按真实像素尺寸返回该文件,周围不会画上任何东西。把页面渲染成图片则恰恰相反:PDF 转 JPG 会把页面上的所有内容(文字、矢量图形、背景以及嵌入图片)一起绘制成一张你指定分辨率的平面位图。当你想要拿回源素材时,例如要复用一张产品照片,就用提取器。当你想要读者所见页面的忠实快照时,就用 PDF 转 JPG。

为什么在本地完成这件事很重要

埋在 PDF 里的图片往往是其中最敏感的部分:扫描的证件照、签过名的页面、内部截图、私人画作。把文档发给在线提取器,等于把这一切连同文字层和各种元数据,都交给了一台你无法控制的服务器。这里的提取器用 PDF.js 在你的浏览器中打开 PDF,并在你的机器上把图片对象取出来,因此文件以及其中的一切都留在你的设备上。

PDF 图像提取的工作原理

从 PDF 中提取图像与将页面转换为光栅截图不同。在 PDF 文件内部,图像存储为单独的 /XObject 流字典,包含原始二进制数据(通常为 DCTDecode/JPEG、Flate、JPX 或 CCITT 编码)以及尺寸和色彩空间的元数据。适当的提取工具直接解析这些流,无需重新编码即可提取每个图像。由于读取的是原始字节而不是重新渲染,提取的文件保留了图像首次嵌入时的精确分辨率、颜色配置文件和质量。没有重新压缩步骤意味着没有额外的质量损失,无论 PDF 本身被重新保存了多少次。

本指南用到的工具

常见问题

我拿到的是原始图片,还是页面的截图?

是原始图片。本工具会按嵌入图片文件在 PDF 中被存储时的样子返回它们,保持原生分辨率和原始格式。如果你想要的是每一整页的图片,包括其中的文字和排版,那就是另一回事了:请使用 PDF 转 JPG 工具,它会把整页按你指定的分辨率光栅化。

为什么它找到的图片比我预期的少?

PDF 只在作者真正放置了位图文件的地方才包含嵌入图片。矢量图形、用 PDF 绘图指令画出的图表以及文字都不是图片,所以不会被提取。工具还会丢弃某些导出过程产生的重复软蒙版副本,这可能会降低计数。如果某一页本身就是一张扫描件,它通常只含一张整页图片,那也正是你将拿回的内容。