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

如何在Python中对PDF文件指定文字进行涂黑处理

实现PDF指定文字涂黑并保存的方法

工具选择

用Python的PyMuPDF(别名fitz)库就能搞定,它对PDF的文本搜索和编辑支持很友好,操作简单高效。

步骤1:安装依赖

在命令行执行:

pip install pymupdf

步骤2:编写代码实现涂黑

以下是完整的可运行代码,替换路径和目标文字即可使用:

import fitz

def redact_target_text(input_pdf_path, output_pdf_path, target_text):
    # 打开原PDF
    doc = fitz.open(input_pdf_path)
    
    # 逐页处理
    for page in doc:
        # 搜索当前页中所有匹配目标文字的区域
        match_rects = page.search_for(target_text)
        # 给每个匹配区域添加黑色填充的涂黑标记
        for rect in match_rects:
            page.add_redact_annot(rect, fill=(0, 0, 0))
        # 应用所有涂黑操作
        page.apply_redactions()
    
    # 保存修改后的PDF
    doc.save(output_pdf_path)
    doc.close()

# 调用示例:替换成你的PDF路径和要涂黑的文字
redact_target_text("原始文档.pdf", "处理后文档.pdf", "需要隐藏的敏感文字")

关键说明

  • search_for(target_text):会返回当前页中所有匹配文字的矩形坐标,精准定位文字位置。
  • add_redact_annot(rect, fill=(0,0,0)):创建涂黑注释,fill参数设置为黑色(RGB值),完全覆盖文字。
  • apply_redactions():必须调用这个方法,才能让涂黑操作真正生效。

特殊情况处理

如果是扫描版PDF(图片格式的PDF),需要先通过OCR识别文字位置,再进行涂黑。可以结合pytesseract库实现:

  1. 先安装依赖:pip install pytesseract pillow
  2. 代码中需要先对每页图片做OCR,提取文字和对应坐标,再用同样的涂黑方法处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 16:31:33