[发明专利]解析PDF表格数据的方法、存储介质有效
申请号: | 201711235867.5 | 申请日: | 2017-11-30 |
公开(公告)号: | CN108132916B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 蓝树和;段涵瑞;薛艳英;江汉祥 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F40/103 | 分类号: | G06F40/103;G06F40/18;G06F40/117 |
代理公司: | 深圳市博锐专利事务所 44275 | 代理人: | 张明 |
地址: | 361000 福建省厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 解析 pdf 表格 数据 方法 存储 介质 | ||
1.一种解析PDF表格数据的方法,其特征在于,包括:
获取每页PDF的各线段的坐标和各字符的坐标;
依据线段交点划分出单元格,并获取各单元格对应的矩形坐标;
依据字符的坐标与矩形坐标的包含关系,获取各单元格对应的字段块;
还包括:
将每页PDF转变为图像数据形式;
若相衔接的上下页沿Y轴方向逐步叠加靠拢后,能够获取相对应的垂直的线段,且能够分别在所述垂直的线段上获取到水平的线段,则合并所述上下页衔接处的单元格;
所述若相衔接的上下页沿Y轴方向逐步叠加靠拢后,能够获取相对应的垂直的线段,且能够分别在所述垂直的线段上获取到水平的线段,则合并所述上下页衔接处的单元格,具体为:
预设每页PDF的左上角为坐标原点;
对当前页从Y轴最大值开始,往原点方向前进获取垂直的线段后,判断所述垂直的线段上是否存在与其相交的水平线段;且同时
对下一页从Y轴零坐标开始,往最大值方向前进获取垂直的线段后,判断所述垂直的线段上是否存在与其相交的水平线段;
若是,则将所述当前页中相邻所述垂直的线段对应的单元格与所述下一页中相对应的单元格合并为同一个单元格。
2.如权利要求1所述的解析PDF表格数据的方法,其特征在于,还包括:
依据单元格的中位线,确定每一行对应的单元格。
3.如权利要求1所述的解析PDF表格数据的方法,其特征在于,所述依据字符的坐标与矩形坐标的包含关系,获取各单元格对应的字段块,具体为:
依据字符的坐标是否位于矩形坐标内,获取非空白的各个矩形坐标对应的字符;
依据字符从PDF的坐标空间映射到用户视觉空间的矩阵系数,排除所述非空白的各矩形坐标内的水印字符;
所述非空白的各矩形坐标对应的字符组成字段块,补充空白的各个矩形坐标对应空白字段;
获取各单元格对应的字段块。
4.如权利要求1所述的解析PDF表格数据的方法,其特征在于,所述获取每页PDF的各线段的坐标和各字符的坐标,具体为:
将每页PDF的线段和字符渲染到CImage句柄,在渲染的同时捕获各线段和各字符的坐标。
5.如权利要求1所述的解析PDF表格数据的方法,其特征在于,所述依据线段交点划分出单元格,并获取各单元格对应的矩形坐标,具体为:
若一线段的一端点坐标与另一线段的一端点坐标之间的距离在预设的第一阈值范围内,则判定所述一线段与所述另一线段相交;
若相邻的四条线段依序头尾相交,且组成的区域超过预设的第二阈值范围,则获取所述四条线段的坐标,标记为所述四条线段构成的单元格对应的矩形坐标。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
获取每页PDF的各线段的坐标和各字符的坐标;
依据线段交点划分出单元格,并获取各单元格对应的矩形坐标;
依据字符的坐标与矩形坐标的包含关系,获取各单元格对应的字段块;
所述程序还能实现以下步骤:
将每页PDF转变为图像数据形式;
依据单元格的中位线,确定每一行对应的单元格;
若相衔接的上下页沿Y轴方向逐步叠加靠拢后,能够获取相对应的垂直的线段,且能够分别在所述垂直的线段上获取到水平的线段,则合并所述上下页衔接处的单元格;
所述若相衔接的上下页沿Y轴方向逐步叠加靠拢后,能够获取相对应的垂直的线段,且能够分别在所述垂直的线段上获取到水平的线段,则合并所述上下页衔接处的单元格,具体为:
预设每页PDF的左上角为坐标原点;
对当前页从Y轴最大值开始,往原点方向前进获取垂直的线段后,判断所述垂直的线段上是否存在与其相交的水平线段;且同时
对下一页从Y轴零坐标开始,往最大值方向前进获取垂直的线段后,判断所述垂直的线段上是否存在与其相交的水平线段;
若是,则将所述当前页中相邻所述垂直的线段对应的单元格与所述下一页中相对应的单元格合并为同一个单元格。
7.如权利要求6所述的计算机可读存储介质,其特征在于,步骤获取每页PDF的各线段的坐标和各字符的坐标,具体为:
将每页PDF的线段和字符渲染到CImage句柄,在渲染的同时捕获各线段和各字符的坐标;
步骤依据线段交点划分出单元格,并获取各单元格对应的矩形坐标,具体为:
若一线段的一端点坐标与另一线段的一端点坐标之间的距离在预设的第一阈值范围内,则判定所述一线段与所述另一线段相交;
若相邻的四条线段依序头尾相交,且组成的区域超过预设的第二阈值范围,则获取所述四条线段的坐标,标记为所述四条线段构成的单元格对应的矩形坐标;
步骤依据字符的坐标与矩形坐标的包含关系,获取各单元格对应的字段块,具体为:
依据字符的坐标是否位于矩形坐标内,获取非空白的各个矩形坐标对应的字符;
依据字符从PDF的坐标空间映射到用户视觉空间的矩阵系数,排除所述非空白的各矩形坐标内的水印字符;
所述非空白的各矩形坐标对应的字符组成字段块,补充空白的各个矩形坐标对应空白字段;
获取各单元格对应的字段块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711235867.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:指令转换方法与系统
- 下一篇:一种文档纠错标记方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置