news 2026/7/5 11:49:37

断网批量提取 PDF、图片中的印章文字,结果汇总到 Excel

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
断网批量提取 PDF、图片中的印章文字,结果汇总到 Excel

大家好,这里是办公智能体广场。最近我们很有激情的研究了一个技术:如何从PDF/图片 中提取所有印章图片里的文字

今天就把这套方案和教程做个总结。它可以在断网环境下,批量识别一批 PDF 中的印章文字,并统一汇总到一个 Excel 表里。

一、需求分析

我准备了几个PDF ,里面有一些印章,有椭圆的,模糊的,清晰的,如下3个图例:

上面总共有4个印章,识别的结果Excel如下:

印章的文字和数字都识别出来了, 效果还是不错的!!!!!

二、实现方案一:小白上手

打开鲸闲办公智能体广场,找到 “印章文字提取器”,如图:

注意,可断网使用!!!

获取: 宫中&浩气: “老罗软件”。然后将所有的 PDF或者图片 进行输入,如图:

有三个参数可以设置,我们选择默认的就可以了。

输出结果

输出结果会把所有输入文件的印章上的文字都提取出来,然后总结放到一个Excel里面,有源文件信息,印章所在页码,第几个印章,提取的文字信息等, 如图:

三、实现方案二:Python脚本

用 Python + Paddle 做 PDF / 图片批量印章文字提取,对经常要处理合同、票据、扫描档案、盖章文件的人来说,非常实用。

它适合这样的场景:一批 PDF 或图片里都有印章,需要把每个印章里的文字统一识别出来,再汇总到一个 Excel 里,方便检索、核对和归档。

优势:

- 可批量处理大量 PDF 和图片,适合成批资料整理
- 对扫描件、截图、拍照文件更友好,不依赖原始文本层
- 支持 PDF 和常见图片格式,流程统一
- 本地运行,文件不出本机,适合内部材料和敏感文件
- 可将识别结果统一汇总为 Excel,后续筛选和核对更方便


劣势:

- 需要一定 Python 基础,首次运行要安装依赖并下载模型
- 印章如果模糊、残缺、倾斜严重,识别效果会受影响
- 背景复杂、叠字、骑缝章等场景,往往还需要人工复核
- 大批量高清 PDF 处理耗时较长,对 CPU / 内存有一定压力


下面是一个简单的 Paddle 实现示例:批量读取目录下的 PDF / 图片,识别印章区域中的文字,并最终汇总到一个 Excel 文件中。

import os from pathlib import Path import pandas as pd from paddlex import create_pipeline # 输入目录,可包含多个子目录 input_root = r"path\to\your\files" # 输出目录 output_root = r"path\to\your\output" Path(output_root).mkdir(parents=True, exist_ok=True) # 支持的文件格式 SUPPORTED_EXT = {".pdf", ".png", ".jpg", ".jpeg", ".bmp", ".webp", ".tif", ".tiff"} # 创建印章识别流水线 # 不同 PaddleX 版本 API 可能略有差异,实际以当前版本文档为准 pipeline = create_pipeline(pipeline="seal_recognition") all_rows = [] def process_file(file_path: Path): ext = file_path.suffix.lower() if ext not in SUPPORTED_EXT: print(f"跳过不支持的文件:{file_path}") return print(f"识别中:{file_path}") # PDF 会按页处理,图片按单张处理 results = pipeline.predict(str(file_path)) for page_index, res in enumerate(results, start=1): # 假设返回结果里包含 seals 字段 # 每个 seal 中包含 text / score 等信息 seals = res.get("seals", []) if isinstance(res, dict) else [] if not seals: all_rows.append({ "源文件": str(file_path), "页码": page_index, "印章序号": "", "识别文字": "(未识别到印章)", "置信度": "" }) continue for seal_index, seal in enumerate(seals, start=1): all_rows.append({ "源文件": str(file_path), "页码": page_index, "印章序号": seal_index, "识别文字": seal.get("text", ""), "置信度": seal.get("score", "") }) def walk_files(root: Path): for path in root.rglob("*"): if path.is_file(): process_file(path) if __name__ == "__main__": walk_files(Path(input_root)) df = pd.DataFrame(all_rows) output_excel = Path(output_root) / "印章识别汇总.xlsx" df.to_excel(output_excel, index=False) print(f"处理完成,结果已输出:{output_excel}")

四、总结

这套方案已经比较实用了:不想折腾环境,直接用现成工具就能在断网环境下批量把 PDF 或图片里的印章文字汇总到 Excel;如果材料特别多、还想自定义流程,就用 Python + Paddle 脚本。两种方式都本地运行、不改原文件,但遇到模糊、残缺、骑缝章这类复杂情况,结果还是建议人工抽检一下。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 11:48:58

Unity动态环境渲染:RenderSettings类实战解析与场景切换应用

1. RenderSettings类基础解析RenderSettings是Unity中控制全局渲染效果的核心类,它就像场景的"环境调节器"。想象你正在布置一个摄影棚:环境光相当于棚内的基础照明,雾效是空气中的颗粒感,天空盒则是背景布景。通过代码…

作者头像 李华
网站建设 2026/7/5 11:48:10

Pygame游戏开发入门:从零打造2D游戏实战指南

1. Pygame入门:从零开始打造你的第一个小游戏 十年前我第一次接触Pygame时,就被它简洁的API设计和强大的2D渲染能力所吸引。作为Python最受欢迎的游戏开发库,Pygame让游戏开发变得像写Python脚本一样自然。本文将带你完整走一遍开发流程&…

作者头像 李华
网站建设 2026/7/5 11:46:35

TETRA网络安全漏洞分析与端到端加密增强方案设计

1. 项目概述:为什么我们要重新审视TETRA的网络安全?如果你在公共安全、应急通信或者关键基础设施领域工作,那么“TETRA”这个词对你来说一定不陌生。陆地集群无线电,这个从上世纪90年代就开始服役的通信标准,至今仍是全…

作者头像 李华
网站建设 2026/7/5 11:45:40

Onekey Steam游戏解锁器:如何快速实现一键DLC解锁的终极指南

Onekey Steam游戏解锁器:如何快速实现一键DLC解锁的终极指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 你是否曾经看着Steam商店里昂贵的DLC内容望而却步?或者被复杂…

作者头像 李华