一种PDF文本段落生成的方法技术

技术编号:3958056 阅读:410 留言:1更新日期:2012-04-11 18:40
本发明专利技术涉及一种PDF文本段落生成的方法,该方法包括:A.识别并提取PDF文本的文字块;B.剔除不同层中重复的文字块,并且确定文本行,所确定的文本行组成文本行集合;C.将文本行集合进行水平方向划分,得到一个或多个第一文本;然后对第一文本集合中的每个第一文本分别进行垂直方向划分,分别得到一个或多个第二文本,提取一个或多个第二文本之间的空白区域以组成空白区域集合;D.合并第一文本集合中两相邻的第一文本,以得到文本排版行;E.划分合并后的文本排版行,以形成文本排版列和文本段落。实施本发明专利技术的技术方案,经过该方法处理过的文本结构易生成RTF格式,效果好,且可编辑度高;另外,该方法是自动排版,无需人工干预。

【技术实现步骤摘要】

本专利技术涉及信息技术,更具体地说,涉及一种PDF文本段落生成的方法。
技术介绍
便携式文件格式(Portable Document Format,PDF),由 Adobe Systems 在 1993 年 用于文件交换所发展出的文件格式。它的优点在于跨平台、能保留文件原有格式(Layout)、 开放标准。在PDF格式文件中,记录了文本元素的精确位置,而文本之间没有任何关系,该 格式不易编辑。PDF文本格式以其卓越的特性成为在互联网上进行电子文档发行和格式化信息传 播的理想文件格式。当前,在互联网发布的科技论文大部分以PDF格式提交。但是,PDF重 在描述文档的打印格式,没有描述原始文档内的数据结构,并且不易编辑。如果需要引用第 三方的PDF文本中的内容,目前通行的办法是手动拷贝出文字,然后再放入其它字处理软 件中手动排版、编辑,这种操作费时费力。目前,一般通过排版软件本身的能力导出XML文件,该XML文件都包含PDF文章的 内容信息,不同的排版软件输出的内容可能不同,但多数的排版软件并不导出文字块的位 置信息,使得PDF文章的信息不完整,往往需要通过手工的方式进行补充,效率非常低。由 于多数排版软件可以生成PDF格式的文件,大量的历史数据是基于PDF的,所以基于PDF的 解析应用面很广。例如,公开号为CN1687926A的专利申请公布了一种“基于XML的PDF文 本信息的抽取系统和方法”,主要是把PDF文本的物理结构转换为逻辑结构,但并没有进行 文本成段落和成文的处理;再例如,公开号为CN1776673A的专利申请公开了一种“PDF文 本到XML文档转换的方法”,通过第三方的工具把PDF转为平级的XML文档,再通过XSLT 结合规则提起XML中的信息,其应用的前提是PDF页面本身比较简单,结构较为一致,使用 简单的XPATH的规则就可以提取XML信息,并不适用复杂的多栏页面。又例如,公开号为 CN160403A的专利申请公开了“一种对报纸页面进行文字阅读顺序恢复的方法”,是对PDF 文本进行文本成文的处理,但并没有涉及到文字块的生成和合并的规则和整个提取内容和 位置等信息的流程。再例如,公开号为CN101206639的专利申请公开了 “一种PDF数据标 引的方法”,是对复杂页面的PDF提供文字块和文章的提取,但是其过程中合并了文字块的 字体和字号,导致转换后效果失真,并且在合并文字块后需要采用人工干预才能识别块与 块之间的关系,无法自动识别块之间的逻辑关系,而且成块的规则生成的结果无法写入RTF 格式。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述在引用第三方的PDF文本进 行编辑排版时,费时费力的缺陷,提供一种PDF文本段落生成的方法,可以省时省力地完成 编辑和排版。本专利技术解决其技术问题所采用的技术方案是构造一种PDF文本段落生成的方法,包括Α.识别并提取PDF文本的文字块;B.剔除不同层中重复的文字块,并且确定文本行,所确定的文本行组成文本行集合;C.将所述文本行集合进行水平方向划分,得到一个或多个第一文本,所述一个或 多个第一文本组成第一文本集合;然后对第一文本集合中的每个第一文本分别进行垂直方 向划分,分别得到一个或多个第二文本,所述一个或多个第二文本组成第二文本集合,提取 第二文本集合中一个或多个第二文本之间的空白区域以组成空白区域集合;D.合并第一文本集合中两相邻的第一文本,以得到文本排版行;E.划分合并后的文本排版行,以形成文本排版列和文本段落。在本专利技术所述的PDF文本段落生成的方法中,在步骤A中,建立旋转角度分别为0、 90、180、270度四个方向的文字块集合,并且以递增量建立数组索引来提取PDF文本的文字 块。在本专利技术所述的PDF文本段落生成的方法中,所提取的文字块包括文字块的基准 线、外围矩形、字体、字号、颜色和角度。在本专利技术所述的PDF文本段落生成的方法中,步骤A中,识别PDF文本的文字块包 括Al.判断PDF文本中的字符是否是英文字符,若是,则执行步骤A3 ;若否,则执行步 骤A2 ;A2.所述字符是一个文字块;A3.判断两相邻字符的间距是否小于字体大小与第一间距系数的乘积,且判断所 述两相邻字符的字体、字号、颜色是否相同,若是,则所述两相邻字符属于同一文字块;若 否,则所述两相邻字符不属于同一文字块。在本专利技术所述的PDF文本段落生成的方法中,所述步骤B包括Bi.获取相同索引值或相邻索引值的两个文字块,若所述两个文字块的文字块内 容相同且所述两文字块的间距小于字体大小与第二间距系数的乘积,则删除其中一个文字 块,并将剩下的文字块放到文字块集合中;B2.建立一个空文本行,将文字块集合中的文字块按数组索引值大小依次放入到 该空文本行中,以生成文本行集合;且在同一文本行中,相同索引值或相邻索引值的两文字 块满足两文字块的基准线距离小于字体大小与第一基准线差距系数的乘积,及两文字块 的水平间距小于字体大小与第二基准线差距系数的乘积。在本专利技术所述的PDF文本段落生成的方法中,所述步骤C包括Cl.将所述文本行集合中的文本行按文本行的上边界值从小到大的顺序依次排 列;C2.逐个比较两相邻的文本行,若两相邻的文本行在Y轴方向的投影相交,则放到 同一个第一文本中;C3.分别将每个第一文本中的文本行按文本行的左边界值从小到大的顺序排列;C4.逐个比较两相邻的文本行,若两相邻的文本行在X轴方向的投影相交,则放到 同一个第二文本中;C5.提取第二文本集合中一个或多个第二文本之间的空白区域,以组成空白区域在本专利技术所述的PDF文本段落生成的方法中,所述步骤D包括第一次合并第一文 本集合中两相邻的第一文本,第一次合并的条件是两相邻的第一文本存在数目相同的空白 区域且所对应的空白区域在X轴方向的投影相交。在本专利技术所述的PDF文本段落生成的方法中,所述步骤D中还包括在第一次合并 之后,进行第二次合并,以得到文本排版行,所述第二次合并的合并条件是两相邻第一文本 的空白区域在X轴方向的投影相交。在本专利技术所述的PDF文本段落生成的方法中,所述步骤E包括El.将所述文本排版行中的文本行按文本行左边界值从小到大顺序排列;E2.新建一个文本排版列,依次从所述文本排版行中顺序取出文本行;E3.判断所取出的文本行和新建的文本排版列是否在X轴方向的投影相交,若是, 则转步骤E4 ;若否,则转步骤E2 ;E4.将所取出的文本行顺序放入所述新建的文本排版列中;E5.将所述文本排版列中的文本行按上边界值从小到大排列;E6.新建一个文本段落,依次从文本排版列中顺序取出文本行;E7.判断两相邻文本行是否满足预设的段落条件,若是,则转步骤E8 ;若否,则转 步骤E6 ;E8.将所述两相邻文本行顺序放入同一文本段落中。在本专利技术所述的PDF文本段落生成的方法中,所述预设的段落条件包括以下条 件(a)文本行之间的高度差小于字体大小与高度系数的乘积,且;(b)文本行之间的垂直间距小于字体平均高度与段落系数的乘积,且;(c)文本行之间的宽度之差小于字体大小与宽度系数的乘积,或,如果两文本行的左边界值相同,则前面一个文本行的宽度大于后面一个文本行的 宽度;或,如果两文本行的右边界值相同,则前面一个文本行的宽度小于后面一个文本文档来自技高网
...

【技术保护点】
一种PDF文本段落生成的方法,其特征在于,包括:A.识别并提取PDF文本的文字块;B.剔除不同层中重复的文字块,并且确定文本行,所确定的文本行组成文本行集合;C.将所述文本行集合进行水平方向划分,得到一个或多个第一文本,所述一个或多个第一文本组成第一文本集合;然后对第一文本集合中的每个第一文本分别进行垂直方向划分,分别得到一个或多个第二文本,所述一个或多个第二文本组成第二文本集合,提取第二文本集合中一个或多个第二文本之间的空白区域以组成空白区域集合;D.合并第一文本集合中两相邻的第一文本,以得到文本排版行;E.划分合并后的文本排版行,以形成文本排版列和文本段落。

【技术特征摘要】

【专利技术属性】
技术研发人员:晏检平
申请(专利权)人:深圳市万兴软件有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有1条评论
  • 来自[北京市联通] 2015年02月07日 08:31
    本段结束是网络热词,出自西班牙首相拉霍伊在2013年8月1日议会演讲时的一句话,“Findelacita”(本段结束)。
    0
1