在线 PDF 图片提取,免费
立即从 PDF 文件中提取所有嵌入图片。预览图片并查看尺寸,可单独下载或打包为 ZIP。
支持 PDF · 最大 50 MB
工作原理
- 上传 PDF: 拖放或选择一个 PDF 文件以提取其中的图片。
- 自动提取: 工具会分析所有页面并提取每个嵌入图片,在网格中显示它们的尺寸和大小。
- 下载图片: 点击图片单独下载,或使用「全部下载为 ZIP」获取所有提取的图片。
为什么要从 PDF 中提取图片?
从 PDF 中提取图片适合内容复用、为演示文稿或网站获取图形、归档可视化文档,或在不分享整个 PDF 的情况下分享单张图片。提取保留原始质量 · 不进行再处理,只按原样导出嵌入的图片。
功能特性
- 完整提取: 提取 PDF 每一页中嵌入的所有图像对象。
- 保留质量: 保留原始格式(PNG、JPG、TIFF 等)和质量 · 不会重新处理或压缩。
- 图片预览: 在可滚动网格中查看所有提取的图片,显示尺寸、格式和大小。
- 单独或批量下载: 单独下载每张图片,或将所有图片打包为 ZIP 文件下载。
- 元数据显示: 每张图片显示其宽度、高度、格式及大致大小。
- 隐私: 所有处理都在您的浏览器中本地完成。不上传任何文件到服务器。
- 快速: 实时提取,无需等待或排队。
常见问题
提取后图片质量会保留吗?
会。工具以原始格式提取图片,不进行再处理或重新压缩。质量与 PDF 中嵌入的完全一致。
可以提取哪些图片格式?
工具以原始嵌入格式提取:PNG、JPG、TIFF、GIF、JPEG2000 及其他常见格式。提取的文件保持原格式和质量。
下载前可以查看图片尺寸吗?
可以。预览网格中的每张图片都会显示宽度和高度(像素)、格式和大致大小。这能帮您识别和选择要下载的图片。
可以单独下载图片吗?
可以。点击图片的下载按钮即可立即获取。您也可以使用「全部下载为 ZIP」将所有提取的图片打包为一个压缩文件。
工具会提取用作背景或装饰的图片吗?
会。工具会提取 PDF 中所有嵌入的图像对象,包括用作背景、装饰或插图的图片,涵盖所有页面。
我的 PDF 会被上传到服务器吗?
不会。所有提取都通过 PDF.js 在您的浏览器中本地完成。您的 PDF 绝不会离开您的设备,确保完全的隐私和安全。
文件大小限制是多少?
支持最大 50 MB 的 PDF。提取速度取决于页数和嵌入图片的数量。包含大量图片的大型 PDF 可能需要一些时间处理。
可以在手机上提取图片吗?
可以。此工具适用于桌面、平板和手机浏览器。只需点击选择 PDF 即可 · 所有图片都会被提取并显示以供下载。
「从 PDF 中提取图像」实际的含义
「从 PDF 中提取图像」这一日常表述含义模糊,而这种模糊性会影响工具实际输出的内容。两种真正不同的操作隐藏在同样的词语背后。第一种是提取嵌入的图像对象:遍历文档,识别作者放入文件的每一个图像 XObject(或内联图像),并将每个对象作为独立的 PNG 重新写出。输出就是文档作者实际放入文件的内容,且分辨率与放入时一致。第二种是把页面渲染为图像:按选定的 DPI 将每个 PDF 页面光栅化为一张图像,把文字、矢量形状和图像一起捕获为扁平像素。输出是页面的图像,而不是页面里的图像。
本工具做的是第一种。给定一份 10 页文档,其中第 2 页和第 7 页共嵌入三张照片,它会生成三个图像文件,而不是十个页面图像。如果您需要第二种,即按页渲染为图像,请使用 PDF 转图像工具。区分这两种操作是用户首次到达时最常见的混淆点:「PDF 转 JPG」服务通常做的是第二种,很多用户在想要第一种时却找到了它们。输出数量是最明显的提示:提取返回嵌入图像的数量;页面渲染返回页面的数量。
本工具的工作原理
本工具运行 PDF.js,Mozilla 的纯 JavaScript PDF 渲染引擎,与 Firefox 内置 PDF 预览所使用的是同一引擎。当您选择一个 PDF 时,浏览器的 File API 将字节直接交给 PDF.js,完全没有网络往返。PDF.js 在 Web Worker 中解析交叉引用表、trailer 和文档目录,以便主线程保持响应。对每一页,工具请求操作符列表,并遍历每一个 paintImageXObject 和 paintInlineImageXObject 调用。对于每个图像操作符,它通过 PDF.js 的对象缓存解析出真正的图像 XObject,按其过滤器和色彩空间解码,把位图绘制到离屏 canvas 上,并把 canvas 导出为 PNG。
宽度、高度和近似的文件大小会记录到画廊视图中。当您点击「下载全部为 ZIP」时,JSZip 会在内存中把所有提取出的图像打包到一个压缩档,浏览器的下载锚点会触发保存。整个过程不会发起任何网络请求。您可以直接验证:在选择 PDF 之前打开浏览器开发者工具的网络面板,运行提取,然后观察没有任何数据离开您的机器。PDF.js 引擎和 JSZip 库在首次访问时下载一次,然后被浏览器缓存,因此后续访问会立即加载且完全离线运行。
PDF 如何存放图像
PDF 文件是一棵对象树。页面树引用页面对象;每个页面对象引用一个内容流和一个资源字典。资源字典的 XObject 条目把短名称(如 Im1、Im2)映射到图像 XObject 流。内容流通过 Do 操作符来绘制它们:像 q 200 0 0 150 50 300 cm /Im1 Do Q 这样的序列的意思是「设置变换,从资源中绘制名为 Im1 的图像,恢复变换」。每个图像 XObject 都带有 Width 和 Height(像素尺寸)、ColorSpace(如何解释每个分量)、BitsPerComponent(1、2、4、8 或 16)以及 Filter(用于压缩字节的编解码链)。
对提取器而言,Filter 字段最为关键,因为它决定了字节能否直接写出,还是必须先解码。实践中常见六种过滤器。DCTDecode 把字节存为一个完整的 JPEG 文件,可直接以 .jpg 扩展名写出;在彩色 PDF 中,这大约占图像的 60% 至 70%。JPXDecode 是 JPEG2000,在消费级文档中罕见,但在高端印刷流水线中可见。CCITTFaxDecode 是用于单比特黑白扫描的第 3 组或第 4 组传真压缩,在扫描的商业档案中很常见。JBIG2Decode 是更高效的后继者,被 Acrobat 的「减小文件体积」处理与 ABBYY FineReader 使用。FlateDecode 是 zlib 压缩的原始像素数据,在图形、屏幕截图以及来自以 Web 为先的创作工具的 PDF 中常见。RunLengthDecode 是简单的游程编码,大多出现在较旧或手工构造的 PDF 中。
内联图像,容易被遗漏的情况
PDF 规范允许将小图像直接嵌入到页面的内容流中,夹在 BI(begin image)、ID(image data)、EI(end image)操作符之间,而不必成为有名字的 XObject。这是 1990 年代初的一项优化,针对几百字节大小的徽标、图标和项目符号这类极小图形,旨在避免为如此小的图像建立独立对象的开销。除此之外,其格式与图像 XObject 相同:相同的过滤器、色彩空间和尺寸字段,以紧凑形式书写。
许多「图像提取」工具完全错过内联图像,因为它们只遍历资源字典的 XObject 表就停下。本工具会遍历页面操作符列表,通过 paintInlineImageXObject 把它们抓取出来。实际后果是:页眉中包含公司徽标(常以内联形式存在)的 PDF,以及来自较旧的、习惯用内联图像放图标的创作工具的 PDF,会比简单遍历 XObject 时返回更多图像。如果您把本工具的提取数量与其他工具对比,这是差异的原因之一。下文将提到的其他原因还包括包含装饰性图形、模板掩码以及某些工具默认会过滤掉的水印。
软掩码、模板与透明度
PDF 中的图像透明度很少在图像内部编码。相反,页面会把彩色图像与一个独立的单通道「软掩码」(XObject 字典中的 SMask 条目)合成。阅读器中可见的结果是合成结果;单独提取的彩色图像本身是不透明的。对于希望用于视觉再利用的提取图像,这会带来意外:从使用了 SMask 的 PDF 中提取的徽标,可能呈现为一个不透明的矩形,而不是一个背景透明的 PNG。当前的行为是只提取彩色图像 XObject,不重新合成 SMask,这与命令行 pdfimages -png 的行为以及我们测试过的所有云提取服务的行为一致。
一个相关概念是 ImageMask 标志。当 ImageMask 为 true 时,字节并不是像素数据;它们是一个单比特模板,用来定义当前填充颜色应用的位置。单独提取一个 ImageMask 得到的是黑白剪影,而不是可用的图片。工具为了完整性会在画廊中报告它们,但除非您特别关心剪影,否则其用处不大。按尺寸排序,如果剪影把画廊弄乱,可以忽略小的模板。把软掩码重新合成为带 Alpha 通道的单张 PNG 是愿望清单上的功能,目前留给桌面工具,因为这种合成有时是破坏性的:重新合成会把背景颜色烙进结果中,这可能是,也可能不是您想要的。
色彩空间及其对输出的影响
2026 年绝大多数 PDF 使用 DeviceRGB(类似 sRGB)或 DeviceCMYK。PDF.js 透明地解码这两者,在绘制到 canvas 之前把 CMYK 转换为 RGB。因此,即使源是 CMYK,提取出的 PNG 始终是 RGB。对于纯粹的视觉再利用而言这是正确的:CMYK 图像本是为印刷而设计,未经转换无法在网站上正确显示。对印刷再现而言,这种转换是近似的,因为目标 canvas 上没有附加打印配置文件。以印刷为目标的用户应当保留原始 PDF,而不要经过提取这一次往返;当印刷流水线直接读取 CMYK 图像时,色彩保真度会更好。
附着在 PDF 图像上的 ICCBased 色彩配置文件在 PDF.js 解码时被尊重,因此提取出的 PNG 在标准观看条件下接近预期外观。索引色空间(调色板图像,典型的 256 色情况,常见于旧的 GIF 导入)在提取时会被去索引化,生成全彩 PNG 而不是基于调色板的图像。这是用于视觉再利用的正确行为,但意味着提取后的 PNG 文件大小可能比 PDF 内部原始索引图像的文件大小更大。在基于 canvas 的流水线中这一折衷无法避免,我们更看重保真度而非紧凑性;希望文件尽量小的用户可以随后把输出过一遍图像压缩器。
推动图像提取的真实工作流
- 把图形重新用于幻灯片或网页。 设计师或市场人员收到客户以 PDF 形式提交的成果,需要其中的照片和图表用于演示文稿、网站重做或社交媒体发布。Acrobat 的右键「保存图像」每次只能处理一张;对于一份带有 40 张图像的 60 页报告,那意味着半小时的点击,相比之下只需在浏览器标签页里拖入一次,然后下载一个 ZIP。
- 构建图像目录。 档案管理员、图书馆员或内容审核员手里有一批 PDF,需要把里面的图像取出来用于编目、撰写替代文本或构建视觉搜索索引。按批提取再下载 ZIP 是标准流程;一旦浏览器端已经证明提取能返回预期结果,在桌面上接入一个遍历文件夹的脚本就很容易。
- 以 PDF 形式交付的摄影作品集。 摄影师偶尔会把客户作品做成 PDF 画册,而不是发送单独的文件,尤其在肖像拍摄和活动报道中。客户想要单张文件。提取会按嵌入分辨率返回,通常这就是摄影师为印刷版本选择的分辨率。
- 从有问题的 PDF 中救出图像。 一个 PDF 在阅读器中无法正确渲染,或表现异常,但其底层结构尚能完整到让 PDF.js 解析资源字典。即使文档其它方面表现糟糕,提取也能把嵌入的图像救出来。这是传输中损坏或保存时签名不一致的文件常见的抢救场景。
- 取证与法律审查。 为证据披露或证据编目做准备的审查员,需要文档集中每一张图像都被列出并可导出。「全部嵌入图像」这个保证很重要:漏掉一张就是问题。基于操作符列表的提取(而不是仅基于 XObject 表)是正确的方法,因为它能抓住一些流水线会默默丢掉的内联图像。
- OCR 预处理。 对于一些 OCR 流水线,基于提取出的图像比基于渲染后的页面效果更好,尤其当源图像是嵌入在低分辨率版式中的高分辨率扫描时。按原生分辨率提取保留了 OCR 可识别的细节,而以 150 或 300 DPI 渲染页面会丢失这些细节。
- 学术与新闻研究。 PDF 中的图表、照片和示意图常被取出用于合理引用、与原始资料核对事实,或在不同文档之间进行比对。研究人员往往还想要嵌入图像的原生分辨率,以便检测页面渲染会掩盖的篡改或压缩痕迹。
常见陷阱及其含义
- 「工具提取出的图像比我预想的多。」 PDF 中常常包含您不会直接注意到的图像:跨页重复的装饰背景、水印、页眉页脚装饰、透明度掩码(本质上是图像 XObject),以及类似复选框这样的极小内联图形。一次完整的提取会把它们全部返回。按尺寸对画廊排序,如果您只想要主要照片,就忽略掉小缩略图即可。
- 「工具提取出的图像比我预想的少。」 最常见的情况是「缺失」的内容不是图像,而是矢量插画:作为绘图操作符嵌入的 Adobe Illustrator 导出,而不是光栅图像。矢量内容不是图像 XObject,不能以图像形式提取。把它捕获为光栅的唯一方法是用 PDF 转图像工具渲染页面。另一种情况是看起来像图像的文字(用字体渲染出的风格化标题);文字也不是图像。
- 「提取的图像是不透明的,但文档里那张是透明背景的。」 文档使用了独立的 SMask 表达透明度;单独的彩色 XObject 本身是不透明的。把软掩码重新合成到输出中这一步留给了桌面工具,因为它有时是破坏性的(会把背景颜色烙进图像)。当下可行的做法是在支持自动去除背景的工具中编辑 PNG,或者如果您需要 Alpha 形状,可以单独从画廊里取出软掩码。
- 「有些图像看起来分辨率较低。」 PDF 在嵌入时常会对图像做下采样,以保持文件体积可控。一张 4000 像素宽的照片被导入文档,然后又用 Acrobat 的「减小文件体积」处理过,可能最终以 800 像素宽存储。提取返回的是存储分辨率,而不是原始分辨率。原始相机分辨率的文件只能从源处恢复,不能从 PDF 中恢复。
- 「两张提取出的图像看起来像一张更大图像的瓦片。」 某些 PDF 生成器会把大图像切成网格状的瓦片,尤其当源图像超过了某个页面尺寸阈值时。这些瓦片以独立的 XObject 形式出现;要重建整张图像,需要在了解版面布局的桌面工具中重新拼接。2026 年这种情况已较少见,因为现代 PDF 库默认不再切片,但较旧的文档偶尔仍会出现这种现象。
- 「PDF 有 100 页,却只提取出了少数几张图像。」 很多 PDF 完全由文字和矢量内容组成。纯文字文档里嵌入图像数量为零,不管它有多少页。如果您想要把每一页都作为图像,请改用 PDF 转图像工具,它会把每一页渲染为一张 PNG 或 JPG,将文字与矢量一起捕获。
- 「CMYK 图像提取后颜色不对。」 严格来说并非如此;提取会把 CMYK 转换为 RGB 以便屏幕显示,而屏幕上的呈现是近似的,因为目标没有附加打印配置文件。要做与印刷一致的还原,就不要走 PNG 提取这条往返路径。保留原始 PDF,使用直接读取 CMYK 的打印工作流。
仅在浏览器内提取与云端提取
占据搜索结果顶部的云端图像提取服务(Smallpdf、ILovePDF、PDF24 web、Sejda、CleverPDF)都会把 PDF 上传到他们的服务器,在服务器端解码,然后把 ZIP 送回到您的浏览器。它们的隐私政策通常承诺一小时内删除并对传输使用 TLS,而且大型运营商在商业声誉上受到的压力是真实存在的。这些都不能改变一个简单的结构性事实:您的文档以及其中的每一张图像,曾短暂地落在别人的存储上,经过了他们的软件。对于敏感材料(医疗记录、财务对账单、内部草稿,任何受保密协议保护的内容)而言,更好的做法是从一开始就不让文件离开设备。
本工具完全在浏览器标签页中运行。PDF.js 在本地解析 PDF,在本地解码图像,把它们写入本地 canvas,并触发一次本地下载。页面初始加载之后不再发起任何网络请求。任何浏览器都能验证这一点:在点击提取之前打开开发者工具的网络面板,运行提取,然后观察没有任何携带您的文件或图像内容的请求被发出。在浏览器中处理的代价是,非常大的 PDF(几百 MB)会比在快速服务器上慢一些,但隐私层面的姿态有本质区别。本工具中的 50 MB 上限是为了防止移动设备内存耗尽而设置的,并不是因为该架构在桌面浏览器上无法处理更大的文件。
更多常见问题
本工具与「PDF 转 JPG」或「PDF 转图像」有何不同?
两种真正不同的操作。「PDF 转图像」把每一页光栅化为一张图,捕获文字、矢量和图像形成扁平像素;输出是页面的图像。「提取图像」取出作者嵌入在文件中的单个图像对象;输出是页面里的那张图像。对于一份 10 页的报告,第 2 页和第 7 页之间含有三张照片,「PDF 转图像」返回十个文件(每页一张);「提取图像」返回三张(那三张照片)。如需第一种操作,请使用 PDF 转图像工具。
为什么原本是 JPEG 的图像在提取后变成了 PNG?
当前流水线把每张图像都过一次 HTML canvas,得到解码后的位图,再把这张位图重新编码为 PNG,以便在存在透明度时予以保留。PNG 是无损的:JPEG 的量化损失已经烙进位图,被完整保留,不会再经历第二轮量化。输出的 PNG 比原始 JPEG 字节更大,但质量并未下降。直接写出原始 JPEG 字节的未来模式(对应 pdfimages -j)在愿望清单上;那带来的收益是更小的文件,而不是更高的质量。
工具会找出所有图像,包括作为背景或内联的图像吗?
会。工具会遍历页面操作符列表,既解析有名字的图像 XObject(绘制操作符 Do),也解析直接嵌入到内容流 BI、ID、EI 操作符之间的内联图像。许多提取工具只遍历 XObject 表,因此漏掉内联图像;本工具不会。模板掩码(ImageMask 为 true)也会被报告,尽管它们更像剪影而非图像,只在受限场景下才有用。
我能处理多大的 PDF?
当前实现支持最多 50 MB。这一上限由移动设备上的浏览器内存压力决定:大 PDF 会同时把已解析的文档和已解码的图像放在内存里,超过设备可用堆容量时,操作系统会回收该标签页。桌面浏览器通常可以处理多得多;这一上限只是为了安全保守。对于非常大的文档,使用桌面端 poppler-utils 中的 pdfimages -all 更合适。
提取会改变图像的版权吗?
不会。嵌入在 PDF 中的图像,无论其版权属于文档作者、摄影师还是许可持有人,提取后归属不变。从您有合法访问权限的 PDF 中提取一张图像,在机制上等同于对它截图;对提取出文件的使用,受与源 PDF 相同的版权规则约束。个人参考使用通常没有争议;再分发或商业使用则取决于源的许可条款。
有桌面或命令行的等价工具吗?
有,两个不错的选择。poppler-utils 中的 pdfimages 最接近:pdfimages -all input.pdf prefix- 会尽可能按原始编码提取每张图像。在 macOS 上用 brew install poppler 安装,在 Debian 或 Ubuntu 上用 apt install poppler-utils 安装,或者从项目站点下载 Windows 二进制包。另一个是 MuPDF 的 mutool extract,它会一起提取图像和字体。两者都是本地、免费,并且维护良好。