PDF关键字定位方法、装置及存储介质与流程

专利2023-04-06  107


pdf关键字定位方法、装置及存储介质
【技术领域】
1.本技术属于数据处理领域,特别涉及一种pdf关键字定位方法、装置及存储介质。


背景技术:

2.pdf文档签名指定签名位置主要是通过页面指定签名位置,saas电子签名平台越来越普及的情况下,许多业务场景不能实现在pdf文档页面直接设置签名位置,而越来越多的需求是希望通过指定关键字在关键字附近实现指定签名位置,而saas平台多使用java语言开发,现有市场上没有完善的基于java语言实现pdf文档关键字查询方法。
3.pdf文档关键字定位方法实现的软件有adobe相关软件产品、福昕pdf阅读器、wps office软件等。实现pdf文档关键字定位方法的类库基于java语言开发的有itext、pdfbox等,基于c语言开发的有mupdf等。
4.然而,pdf阅读软件未对外开放api接口,第三方应用无法使用该方法,且非java语言开发,嵌入基于java语言开发的电子签名平台存在兼容问题。


技术实现要素:

5.本技术提供一种pdf关键字定位方法、装置及存储介质,可以解决电子签名平台的兼容问题,同时通过第三方应用对pdf阅读软件中关键字进行定位。
6.本技术第一方面提供了一种pdf关键字定位方法,包括:
7.读取目标pdf文档内容;
8.确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
9.计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;
10.根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
11.根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
12.根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
13.根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
14.本技术第二方面提供了一种pdf关键字定位的装置,包括:
15.读取单元,用于读取目标pdf文档内容;
16.第一确定单元,用于确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
17.第一计算单元,用于计算目标关键字所对应的位置信息,所述目标关键字为所述n
个关键字中的任意一个关键字;
18.第二计算单元,用于根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
19.第二确定单元,用于根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
20.第三确定单元,用于根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
21.定位单元,用于根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
22.一种可能的设计中,所述第二计算单元具体用于:
23.通过如下公式计算所述目标关键字所对应的第一位置的位置信息,所述第一位置为所述目标关键字所对应的左上点、左下点、右上点以及右下点:
[0024][0025][0026][0027][0028]
其中,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息,(x1,y1)为所述目标关键字中第一个字的位置信息,(x2,y2)为所述目标关键字中最后一个字的位置信息。
[0029]
一种可能的设计中,所述第二确定单元具体用于:
[0030]
根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果;
[0031]
根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息。
[0032]
一种可能的设计中,所述第二确定单元根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息包括:
[0033]
若所述判断结果为所述目标关键字存在换行或换页,则通过如下公式确定所述第二位置的位置信息,所述第二位置包括所述目标关键字所对应的左中点和右中点:
[0034]
[0035][0036]
其中,(x
左中
,y
左中
)为所述左中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息;
[0037]
若所述判断结果为所述目标关键字不存在换行或换页,则通过如下公式确定所述第二位置信息,所述第二位置包括所述目标关键字所对应的上中点、下中点、左中点、右中点以及中中点:
[0038][0039][0040][0041][0042][0043]
其中,(x
上中
,y
上中
)为所述上中点的位置信息,(x
下中
,y
下中
)为所述下中点的位置信息,(x
左中
,y
左中
)为所述左中点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
中中
,y
中中
)为所述中中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息。
[0044]
一种可能的设计中,所述第二确定单元根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果包括:
[0045]
判断所述左下点的y值是否大于所述右上点的y值;
[0046]
若是,则将所述判断结果确定为所述目标关键字换行;
[0047]
判断所述目标关键字的第一个字所在的页面与所述目标关键字的最后一个字所在的页面是否相同;
[0048]
若否,则将所述判断结果确定为所述目标关键字换页。
[0049]
一种可能的设计中,所述第三确定单元具体用于:
[0050]
确定所述第一位置的x坐标值、所述第一位置的y坐标值、所述第二位置的x坐标值和所述第二位置的y坐标值;
[0051]
根据所述第一位置的x坐标值、所述第一位置的y坐标值以及所述目标页面的页面尺寸确定所述第一比例值,所述目标页面的页面尺寸为所述目标页面的页面高度和所述目标页面的页面宽度;
[0052]
根据所述第二位置的x坐标值、所述第二位置的y坐标值以及所述目标页面的页面尺寸确定所述第二比例值。
[0053]
一种可能的设计中,所述第一计算单元具体用于:
[0054]
根据所述目标pdf文档内容确定所述目标关键字所对应的段落信息以及所述目标关键字所对应的属性信息;
[0055]
获取所述目标关键字所对应的字体信息;
[0056]
根据所述段落信息、所述属性信息以及所述字体信息确定所述目标关键字所对应的位置信息。
[0057]
本技术实施例第三方面提供了一种计算机设备,其包括至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行上述第二方面所述的pdf关键字定位方法的步骤。
[0058]
本技术实施例第四方面提供了一种计算机存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述第二方面所述的pdf关键字定位方法的步骤。
[0059]
综上所述,可以看出,本技术提供的实施例中,通过计算n个关键字中每个关键字所对应的位置信息,并确定每个关键字所对应的第一位置和第二位置的位置,并确定第一位置、第二位置与页面的比例,进而可以根据第一位置的位置信息、第二位置的位置信息、第一位置、第二位置与页面的比例对目标关键字进行定位,由此可以更好的满足pdf签名时所需签名定位的需求,同时无需安装第三方软件单独处理,极大的提高性能。
【附图说明】
[0060]
图1为本技术实施例提供的pdf关键字定位方法的流程示意图;
[0061]
图2为本技术实施例提供的pdf关键字定位方法的一个实施例示意图;
[0062]
图3为本技术实施例提供的pdf关键字定位方法的另一实施例示意图;
[0063]
图4为本技术实施例提供的pdf关键字定位装置的虚拟结构示意图;
[0064]
图5为本发明实施例提供的pdf关键字定位装置的硬件结构示意图;
[0065]
图6为本发明实施例提供的一种电子设备的实施例示意图;
[0066]
图7为本发明实施例提供的一种计算机可读存储介质的实施例示意图。
【具体实施方式】
[0067]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。
[0068]
本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或
模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本技术中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征向量可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本技术中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本技术方案的目的。
[0069]
下面从pdf关键字定位装置的角度对本技术实施例提供的pdf关键字定位方法进行说明,请参阅图1,图1为本技术实施例提供的pdf关键字定位方法的流程示意图,包括:
[0070]
101、读取目标pdf文档内容。
[0071]
本实施例中,pdf关键字定位装置可以读取目标pdf文档内容,具体的可以根据pdf文档规范使用java语言一页页的读取目标pdf文档内容,该目标pdf文档内容为待进行pdf关键字定位的pdf文档的内容。
[0072]
102、确定目标pdf文档内容所对应的n个关键字。
[0073]
本实施例中,pdf关键字定位装置在读取到目标pdf文档内容后,可以根据用户选择的关键字从目标pdf文档内容中进行匹配,以确定出n个关键字,其中,n为大于或等于1的整数。
[0074]
103、计算目标关键字所对应的位置信息。
[0075]
本实施例中,pdf关键字定位装置在确定目标pdf文档内容所对应的n个关键字之后,可以计算目标关键字所对应的位置信息,该位置信息通过相对文档页面左上点的坐标来标识,以坐标的形式进行标识,该目标关键字为n个关键字中的任意一个关键字。
[0076]
一个实施例中,pdf关键字定位装置计算目标关键字所对应的位置信息包括:
[0077]
根据目标pdf文档内容确定目标关键字所对应的段落信息以及目标关键字所对应的属性信息;
[0078]
获取目标关键字所对应的字体信息;
[0079]
根据段落信息、属性信息以及字体信息确定目标关键字所对应的位置信息。
[0080]
本实施例中,pdf关键字定位装置可以根据pdf文档规范获取目标关键字所在的段落信息以及目标关键字所对应的属性信息,该段落信息为关键字包含在段落中或者关键字包含在几个段落中,该目标关键字所对应的属性信息包括目标关键字所处段落所在的位置,也即目标关键字所对应的段落相对于页面左顶点的坐标信息、目标关键字的宽高、目标关键字的边距以及目标关键字所在的页数信息;并获取目标关键字所对应的字体信息,该字体信息包括目标关键字的字体(如宋体、楷体、黑体等等字体)、目标关键字的字形、目标关键字的样式、目标关键字的大小等信息;最后根据段落信息、属性信息以及字体信息确定目标关键字所对应的大致位置,然后根据目标关键字所在段落字数、目标关键字某个字所在段落的位置计算出目标关键字中每个字的位置信息(也即目标关键字中每个字的坐标)。下面结合图2对位置信息进行详细说明:
[0081]
请参阅图2,图2为本技术实施例提供的pdf关键字定位方法的一个实施例示意图,图2中的(abc)tj表示目标pdf文本内容;40 50td表示abc所在的位置,即abc在文档左顶点x
距离40,y距离50(40,50)的地点;若关键字为bc,(假设字体宽10,高12,没有边距),则关键字中b的位置(右下点)为(40+20,50+12)=(60,62),c的位置为(40+30,50+12)=(70,62)。
[0082]
104、根据位置信息计算目标关键字所对应的第一位置的位置信息。
[0083]
本实施例中,pdf关键字定位装置在计算得到目标关键字中每个关键字的位置信息之后,可以根据该位置信息计算目标关键字所对应的第一位置的位置信息,该第一位置为目标关键字所对应的左上点、左下点、右上点以及右下点,具体的:
[0084]
通过如下公式计算目标关键字所对应的第一位置的位置信息:
[0085][0086][0087][0088][0089]
其中,(x
左上
,y
左上
)为左上点的位置信息,(x
左下
,y
左下
)为左下点的位置信息,(x
右上
,y
右上
)为右上点的位置信息,(x
右上
,y
右上
)为右下点的位置信息,(x1,y1)为目标关键字中第一个字的位置信息,(x2,y2)为目标关键字中最后一个字的位置信息。
[0090]
如图3所示,图3为本技术实施例提供的pdf关键字定位方法的另一实施例示意图,其中,“专利”为目标关键字,左上点、右上点、左下点以及右下点的具体位置如图3所示。
[0091]
105、根据第一位置的位置信息确定目标关键字所对应的第二位置的位置信息。
[0092]
本实施例中,pdf关键字定位装置在确定第一位置的位置信息之后,可以根据第一位置的位置信息确定目标关键字所对应的第二位置信息,具体的,可以根据第一位置的位置信息对目标关键字是否换行或换页进行判断,以得到判断结果;并根据判断结果确定目标关键字所对应的第二位置的位置信息。
[0093]
需要说明的是,pdf关键字定位装置根据第一位置的位置信息对目标关键字是否换行或换页进行判断时,可以通过判断左下点的y值是否大于右上点的y值来确定目标关键字是否换行,若目标关键字所对应的左下点的y值大于目标关键字所对应的右上点的y值,则确定目标关键字中存在换行,若目标关键字所对应的左下点的y值不大于目标关键字所对应的右上点的y值,则确定目标关键字中不存在换行;同时还可以通过判断目标关键字的第一个字所在的页面与目标关键字的最后一个字所在的页面是否相同来判断目标关键字是否换页,若目标关键字的第一个字所在的页面与目标关键字的最后一个字所在的页面不相同,则说明目标关键字存在换页。
[0094]
一个实施例中,pdf关键字定位装置根据判断结果确定目标关键字所对应的第二位置的位置信息包括:
[0095]
若判断结果为目标关键字存在换行或换页,则通过如下公式确定第二位置的位置信息,第二位置包括目标关键字所对应的左中点和右中点:
[0096][0097][0098]
其中,(x
左中
,y
左中
)为左中点的位置信息,(x
左上
,y
左上
)为左上点的位置信息,(x
右中
,y
右中
)为右中点的位置信息,(x
右上
,y
右上
)为右上点的位置信息;
[0099]
若判断结果为目标关键字不存在换行或换页,则通过如下公式确定第二位置信息,第二位置包括目标关键字所对应的上中点、下中点、左中点、右中点以及中中点:
[0100][0101][0102][0103][0104][0105]
其中,(x
上中
,y
上中
)为上中点的位置信息,(x
下中
,y
下中
)为下中点的位置信息,(x
左中
,y
左中
)为左中点的位置信息,(x
右中
,y
右中
)为右中点的位置信息,(x
中中
,y
中中
)为中中点的位置信息,(x
左上
,y
左上
)为左上点的位置信息,(x
左下
,y
左下
)为左下点的位置信息,(x
右上
,y
右上
)为右上点的位置信息,(x
右上
,y
右上
)为右下点的位置信息。
[0106]
需要说明的是,上中点、下中点、左中点、右中点和中中点的具体位置如图3所示。
[0107]
106、根据目标页面的页面尺寸、第一位置的位置信息以及第二位置的位置信息确定第一位置与目标页面的第一比例值以及第二位置与目标页面的第二比例值。
[0108]
本实施例中,pdf关键字定位装置可以根据目标页面的页面尺寸、第一位置的位置信息以及第二位置的位置信息确定第一位置与目标页面的第一比例值以及第二位置与目标页面的第二比例值,其中,该目标页面为目标关键字所对应的页面。具体的,确定第一位置的x坐标值、第一位置的y坐标值、第二位置的x坐标值和第二位置的y坐标值;根据第一位置的x坐标值、第一位置的y坐标值以及目标页面的页面尺寸确定第一比例值,目标页面的
页面尺寸为目标页面的页面高度和目标页面的页面宽度;根据第二位置的x坐标值、第二位置的y坐标值以及目标页面的页面尺寸确定第二比例值。也就是说,在计算关键字与页面的比例时,可以通过目标关键字中的九个点位置的x值除目标页面的页面宽度,得到一个比值,通过目标关键字中九个点位置的y值除目标页面的页面高度,得到另一比值。
[0109]
需要说明的是,在使用福昕、wps office等第三方软件时,可以通过调用相应api获取目标关键字的位置信息。
[0110]
107、根据第一位置的位置信息、第二位置的位置信息、第一比例值以及第二比例值对目标关键字进行定位。
[0111]
本实施例中,pdf关键字定位装置可以根据第一位置的位置信息、第二位置的位置信息、第一比例值以及第二比例值对目标关键字进行定位。
[0112]
综上所述,可以看出,本技术提供的实施例中,通过计算n个关键字中每个关键字所对应的位置信息,并确定每个关键字所对应的第一位置和第二位置的位置,并确定第一位置、第二位置与页面的比例,进而可以根据第一位置的位置信息、第二位置的位置信息、第一位置、第二位置与页面的比例对目标关键字进行定位,由此可以更好的满足签名所需签名定位的需求,同时无需安装第三方软件单独处理,极大的提高性能。
[0113]
请参阅图4,图4为本技术提供的pdf关键字定位装置的虚拟结构意图,该pdf关键字定位装置400包括:
[0114]
读取单元401,用于读取目标pdf文档内容;
[0115]
第一确定单元402,用于确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
[0116]
第一计算单元403,用于计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;
[0117]
第二计算单元404,用于根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
[0118]
第二确定单元405,用于根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
[0119]
第三确定单元406,用于根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
[0120]
定位单元407,用于根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
[0121]
一种可能的设计中,所述第二计算单元403具体用于:
[0122]
通过如下公式计算所述目标关键字所对应的第一位置的位置信息,所述第一位置为所述目标关键字所对应的左上点、左下点、右上点以及右下点:
[0123][0124]
[0125][0126][0127]
其中,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息,(x1,y1)为所述目标关键字中第一个字的位置信息,(x2,y2)为所述目标关键字中最后一个字的位置信息。
[0128]
一种可能的设计中,所述第二确定单元405具体用于:
[0129]
根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果;
[0130]
根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息。
[0131]
一种可能的设计中,所述第二确定单元405根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息包括:
[0132]
若所述判断结果为所述目标关键字存在换行或换页,则通过如下公式确定所述第二位置的位置信息,所述第二位置包括所述目标关键字所对应的左中点和右中点:
[0133][0134][0135]
其中,(x
左中
,y
左中
)为所述左中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息;
[0136]
若所述判断结果为所述目标关键字不存在换行或换页,则通过如下公式确定所述第二位置信息,所述第二位置包括所述目标关键字所对应的上中点、下中点、左中点、右中点以及中中点:
[0137][0138][0139]
[0140][0141][0142]
其中,(x
上中
,y
上中
)为所述上中点的位置信息,(x
下中
,y
下中
)为所述下中点的位置信息,(x
左中
,y
左中
)为所述左中点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
中中
,y
中中
)为所述中中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息。
[0143]
一种可能的设计中,所述第二确定单元405根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果包括:
[0144]
判断所述左下点的y值是否大于所述右上点的y值;
[0145]
若是,则将所述判断结果确定为所述目标关键字换行;
[0146]
判断所述目标关键字的第一个字所在的页面与所述目标关键字的最后一个字所在的页面是否相同;
[0147]
若否,则将所述判断结果确定为所述目标关键字换页。
[0148]
一种可能的设计中,所述第三确定单元406具体用于:
[0149]
确定所述第一位置的x坐标值、所述第一位置的y坐标值、所述第二位置的x坐标值和所述第二位置的y坐标值;
[0150]
根据所述第一位置的x坐标值、所述第一位置的y坐标值以及所述目标页面的页面尺寸确定所述第一比例值,所述目标页面的页面尺寸为所述目标页面的页面高度和所述目标页面的页面宽度;
[0151]
根据所述第二位置的x坐标值、所述第二位置的y坐标值以及所述目标页面的页面尺寸确定所述第二比例值。
[0152]
一种可能的设计中,所述第一计算单元403具体用于:
[0153]
根据所述目标pdf文档内容确定所述目标关键字所对应的段落信息以及所述目标关键字所对应的属性信息;
[0154]
获取所述目标关键字所对应的字体信息;
[0155]
根据所述段落信息、所述属性信息以及所述字体信息确定所述目标关键字所对应的位置信息。
[0156]
上面图4从模块化功能实体的角度对本技术实施例中的pdf关键字定位装置进行了描述,下面从硬件处理的角度对本技术实施例中的pdf关键字定位装置进行详细描述,请参阅图5,本技术实施例中的pdf关键字定位装置500一个实施例,包括:
[0157]
输入装置501、输出装置502、处理器503和存储器504(其中处理器503的数量可以一个或多个,图5中以一个处理器503为例)。在本技术的一些实施例中,输入装置501、输出装置502、处理器503和存储器504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
[0158]
其中,通过调用存储器504存储的操作指令,处理器503,用于执行如下步骤:
[0159]
读取目标pdf文档内容;
[0160]
确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
[0161]
计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;
[0162]
根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
[0163]
根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
[0164]
根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
[0165]
根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
[0166]
通过调用存储器504存储的操作指令,处理器503,还用于执行图1对应的实施例中的任一方式。
[0167]
请参阅图6,图6为本技术实施例提供的电子设备的实施例示意图。
[0168]
如图6所示,本技术实施例提供了一种电子设备,包括存储器610、处理器620及存储在存储器620上并可在处理器620上运行的计算机程序611,处理器620执行计算机程序611时实现以下步骤:
[0169]
读取目标pdf文档内容;
[0170]
确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
[0171]
计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;
[0172]
根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
[0173]
根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
[0174]
根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
[0175]
根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
[0176]
在具体实施过程中,处理器620执行计算机程序611时,可以实现图1对应的实施例中任一实施方式。
[0177]
由于本实施例所介绍的电子设备为实施本技术实施例中一种pdf关键字定位装置所采用的设备,故而基于本技术实施例中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本技术实施例中的方法不再详细介绍,只要本领域所属技术人员实施本技术实施例中的
方法所采用的设备,都属于本技术所欲保护的范围。
[0178]
请参阅图7,图7为本技术实施例提供的一种计算机可读存储介质的实施例示意图。
[0179]
如图7所示,本实施例提供了一种计算机可读存储介质700,其上存储有计算机程序711,该计算机程序711被处理器执行时实现如下步骤:
[0180]
读取目标pdf文档内容;
[0181]
确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;
[0182]
计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;
[0183]
根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;
[0184]
根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;
[0185]
根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;
[0186]
根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。
[0187]
在具体实施过程中,该计算机程序711被处理器执行时可以实现图1对应的实施例中任一实施方式。
[0188]
需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
[0189]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0190]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0191]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0192]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0193]
本技术实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机软件指令,当计算机软件指令在处理设备上运行时,使得处理设备执行如图1对应实施例中的pdf关键字定位方法中的流程。
[0194]
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
[0195]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0196]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0197]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0198]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0199]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0200]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前
述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修该,或者对其中部分技术特征进行等同替换;而这些修该或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。

技术特征:
1.一种pdf关键字定位方法,其特征在于,包括:读取目标pdf文档内容;确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。2.根据权利要求1所述的方法,其特征在于,所述根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息包括:通过如下公式计算所述目标关键字所对应的第一位置的位置信息,所述第一位置为所述目标关键字所对应的左上点、左下点、右上点以及右下点:述目标关键字所对应的左上点、左下点、右上点以及右下点:述目标关键字所对应的左上点、左下点、右上点以及右下点:述目标关键字所对应的左上点、左下点、右上点以及右下点:其中,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息,(x1,y1)为所述目标关键字中第一个字的位置信息,(x2,y2)为所述目标关键字中最后一个字的位置信息。3.根据权利要求2所述的方法,其特征在于,所述根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息包括:根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果;根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息。4.根据权利要求3所述的方法,其特征在于,所述根据所述判断结果确定所述目标关键字所对应的第二位置的位置信息包括:若所述判断结果为所述目标关键字存在换行或换页,则通过如下公式确定所述第二位置的位置信息,所述第二位置包括所述目标关键字所对应的左中点和右中点:
其中,(x
左中
,y
左中
)为所述左中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息;若所述判断结果为所述目标关键字不存在换行或换页,则通过如下公式确定所述第二位置信息,所述第二位置包括所述目标关键字所对应的上中点、下中点、左中点、右中点以及中中点:及中中点:及中中点:及中中点:及中中点:其中,(x
上中
,y
上中
)为所述上中点的位置信息,(x
下中
,y
下中
)为所述下中点的位置信息,(x
左中
,y
左中
)为所述左中点的位置信息,(x
右中
,y
右中
)为所述右中点的位置信息,(x
中中
,y
中中
)为所述中中点的位置信息,(x
左上
,y
左上
)为所述左上点的位置信息,(x
左下
,y
左下
)为所述左下点的位置信息,(x
右上
,y
右上
)为所述右上点的位置信息,(x
右上
,y
右上
)为所述右下点的位置信息。5.根据权利要求3所述的方法,其特征在于,所述根据所述第一位置的位置信息对所述目标关键字是否换行或换页进行判断,以得到判断结果包括:判断所述左下点的y值是否大于所述右上点的y值;若是,则将所述判断结果确定为所述目标关键字换行;判断所述目标关键字的第一个字所在的页面与所述目标关键字的最后一个字所在的页面是否相同;若否,则将所述判断结果确定为所述目标关键字换页。6.根据权利要求1至5中任一项所述的方法,其特征在于,所述根据目标页面的页面尺
寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值包括:确定所述第一位置的x坐标值、所述第一位置的y坐标值、所述第二位置的x坐标值和所述第二位置的y坐标值;根据所述第一位置的x坐标值、所述第一位置的y坐标值以及所述目标页面的页面尺寸确定所述第一比例值,所述目标页面的页面尺寸为所述目标页面的页面高度和所述目标页面的页面宽度;根据所述第二位置的x坐标值、所述第二位置的y坐标值以及所述目标页面的页面尺寸确定所述第二比例值。7.根据权利要求1至5中任一项所述的方法,其特征在于,所述计算目标关键字所对应的位置信息包括:根据所述目标pdf文档内容确定所述目标关键字所对应的段落信息以及所述目标关键字所对应的属性信息;获取所述目标关键字所对应的字体信息;根据所述段落信息、所述属性信息以及所述字体信息确定所述目标关键字所对应的位置信息。8.一种pdf关键字定位装置,其特征在于,包括:读取单元,用于读取目标pdf文档内容;第一确定单元,用于确定所述目标pdf文档内容所对应的n个关键字,其中,所述n为大于或等于1的整数;第一计算单元,用于计算目标关键字所对应的位置信息,所述目标关键字为所述n个关键字中的任意一个关键字;第二计算单元,用于根据所述位置信息计算所述目标关键字所对应的第一位置的位置信息;第二确定单元,用于根据所述第一位置的位置信息确定所述目标关键字所对应的第二位置的位置信息;第三确定单元,用于根据目标页面的页面尺寸、所述第一位置的位置信息以及所述第二位置的位置信息确定所述第一位置与所述目标页面的第一比例值以及所述第二位置与所述目标页面的第二比例值,所述目标页面为所述目标关键字所对应的页面;定位单元,用于根据所述第一位置的位置信息、所述第二位置的位置信息、第一比例值以及第二比例值对所述目标关键字进行定位。9.一种计算机设备,其特征在于,包括:至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行权利要求1至7中任一项所述的pdf关键字定位方法的步骤。10.一种计算机存储介质,其特征在于,包括:指令,当所述指令在计算机上运行时,使得所述计算机执行权利要求1至7中任一项所述的pdf关键字定位方法的步骤。

技术总结
本申请提供一种PDF关键字定位方法及相关设备,由此可以更好的满足PDF签名时所需签名定位的需求,同时无需安装第三方软件单独处理,极大的提高性能。该方法包括:读取目标PDF文档内容;确定目标PDF文档内容所对应的N个关键字;计算目标关键字所对应的位置信息;根据位置信息计算所述目标关键字所对应的第一位置的位置信息;根据第一位置的位置信息确定目标关键字所对应的第二位置的位置信息;根据目标页面的页面尺寸、第一位置的位置信息以及第二位置的位置信息确定第一位置与目标页面的第一比例值以及第二位置与目标页面的第二比例值;根据第一位置的位置信息、第二位置的位置信息、第一比例值以及第二比例值对目标关键字进行定位。字进行定位。字进行定位。


技术研发人员:郭晋 韦利东
受保护的技术使用者:上海亘岩网络科技有限公司
技术研发日:2022.07.20
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-2206.html

最新回复(0)