You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何替换PDF文档中嵌入的指定图片

PDF嵌入式图片替换解决方案

你之前修改xmpMM:Ingredients项下的原始路径没有效果,是因为该字段仅属于PDF元数据的历史引用记录,目标图片已经完整编码嵌入到PDF的内容流中,修改元数据不会改动实际存储的图片资源。

图形界面操作(适合普通用户少量替换)

  • 用Adobe Acrobat Pro操作:打开PDF后选择右侧「编辑PDF」工具,右键点击需要替换的图片,选择「替换图像」,导入本地新图片后工具会自动适配原图片的尺寸、位置,调整后直接保存PDF即可。
  • 用免费工具LibreOffice Draw操作:直接用Draw打开PDF文件,选中要替换的图片后右键选择「替换图片」,导入新图片后手动微调至原有尺寸,完成后导出为PDF即可,适合简单排版的PDF文件。

命令行/脚本操作(适合批量替换场景)

  • 用pdfimages + pdftk工具组合:首先执行pdfimages -list 你的PDF文件路径.pdf 列出文档中所有嵌入图片的编号、分辨率、尺寸参数,导出原图片备份后,将新图片调整至与原图参数一致,替换对应编号的资源后重新打包生成PDF即可。
  • 用Python PyMuPDF库批量处理,参考代码如下:
import fitz

# 打开原PDF
doc = fitz.open("source.pdf")
# 按顺序准备好替换用的新图片路径,3张图按对应顺序填写即可
new_img_paths = ["new1.png", "new2.png", "new3.png"]
img_counter = 0

for page in doc:
    # 获取当前页所有图片资源
    img_list = page.get_images(full=True)
    for img in img_list:
        img_xref = img[0]
        # 读取对应新图片的二进制内容
        new_img_bytes = open(new_img_paths[img_counter], "rb").read()
        # 更新PDF中的图片流
        doc.update_stream(img_xref, new_img_bytes)
        img_counter += 1

# 保存替换后的PDF
doc.save("replaced.pdf")

替换前请务必备份原PDF文件,新图片建议调整到和原图片一致的尺寸、色空间(RGB/CMYK),避免替换后出现排版错位、颜色偏差的问题。

内容的提问来源于stack exchange,提问作者coral

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:27:01