CN112417826B - Pdf在线编辑方法、装置、电子设备和可读存储介质 - Google Patents
Pdf在线编辑方法、装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN112417826B CN112417826B CN202011326606.6A CN202011326606A CN112417826B CN 112417826 B CN112417826 B CN 112417826B CN 202011326606 A CN202011326606 A CN 202011326606A CN 112417826 B CN112417826 B CN 112417826B
- Authority
- CN
- China
- Prior art keywords
- character
- text
- string
- adjacent
- character string
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明的实施例提供了一种PDF在线编辑方法、装置、电子设备和可读存储介质,涉及编辑技术领域。本发明实施例提供的PDF在线编辑方法、装置、电子设备和可读存储介质,在确定PDF文档中的目标图片后,获取目标图片的文字层信息,通过对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域,响应对至少一个文字串对应的文本区域的操作,对文字串的文本属性进行编辑,根据编辑后的各文字串的文本属性更新PDF文档,如此,实现了PDF文档中图片对象的在线编辑,且无需借助第三方工具,工作效率高。
Description
技术领域
本发明涉及编辑技术领域,具体而言,涉及一种PDF在线编辑方法、装置、电子设备和可读存储介质。
背景技术
随着科技发展,针对于便携式文档格式(Portable Document Format,PDF)文档在线编辑修改系统开始出现,但这些修改普遍是针对PDF文档中的文字信息内容,而PDF文档中的图片对象的在线修改始终是未能突破的技术难题。
目前,针对PDF文档中图片的修改,大多是借助于其他第三方工具来进行,图片修改完成后,再导入到编辑工具中重新合成生成PDF文件,因此修改工作效率太低,且无法实现云服务方式的在线编辑维护。
发明内容
基于上述研究,本发明提供了一种PDF在线编辑方法、装置、电子设备和可读存储介质,以改善上述问题。
本发明的实施例可以这样实现:
第一方面,本发明实施例提供一种PDF在线编辑方法,应用于电子设备,所述方法包括:
确定PDF文档中的目标图片,获取所述目标图片的文字层信息;
对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域;
响应对至少一个所述文字串对应的文本区域的操作,对所述文字串的文本属性进行编辑;
根据编辑后的各所述文字串的文本属性更新所述PDF文档。
在可选的实施方式中,所述文字层信息包括每个文字的字号、坐标位置、字体以及倾斜度;所述对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域的步骤包括:
根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到至少一个字符串;
针对每个字符串,根据该字符串所包括的每个文字的坐标位置对该字符串所包括的每个文字进行排序;
根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域;其中,每个所述文字串的文本属性包括该文字串所包括的每个所述文字的内容、字体、字号、坐标位置以及倾斜度。
在可选的实施方式中,所述根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域的步骤包括:
根据每个所述文字的字号,获取每个所述文字对应的合并区间;
根据每个所述文字的坐标位置以及字号,得到每个所述文字的最大坐标和最小坐标;
根据每个所述文字的最大坐标和最小坐标,计算每个所述文字和与该文字相邻的文字之间的最近距离;
针对每个所述文字,若该文字和与该文字相邻的文字之间的距离位于该文字的合并区间内,则将该文字和与该文字相邻的文字进行合并,并继续计算合并后的文字和与该合并后的文字相邻的文字之间的最近距离,若计算到的最近距离位于该合并后的文字的合并区间内,则将合并后的文字和与该合并后的文字相邻的文字进行合并,直至最新合并后的文字和与该最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内,根据该最新合并后的文字,得到第一文字串,并根据该最新合并后的文字的字号以及坐标位置,得到所述第一文字串的文本区域;
若该文字和与该文字相邻的文字之间的距离未位于该文字的合并区间内,将该文字作为第二文字串,并根据该文字的字号以及坐标位置,得到所述第二文字串的文本区域。
在可选的实施方式中,所述根据每个所述文字的字号,对排序后的每个所述文字进行合并的步骤包括:
针对每个所述文字,判断与该文字相邻的文字的字号是否为该文字的预设倍数;
若是,根据该文字相邻的文字的坐标位置以及该文字的坐标位置,确定与该文字相邻的文字属于该文字的上标或下标;
若与该文字相邻的文字属于该文字的上标,则按照上标的格式,将与该文字相邻的文字和该文字进行合并;
若与该文字相邻的文字属于该文字的下标,则按照下标的格式,将与该文字相邻的文字和该文字进行合并。
在可选的实施方式中,所述根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到多个字符串的步骤包括:
根据各所述文字的倾斜度,将倾斜度相同的文字进行聚合,得到多个字符串。
在可选的实施方式中,在确定PDF文档中的目标图片,获取所述目标图片所有的文字层信息后,所述方法还包括:
获取所述目标图片的图像层信息;
所述根据编辑后的各所述文字串的文本属性更新所述PDF文档的步骤包括:
新建一目标PDF文档,将所有的所述图像层信息复制到所述目标PDF文档中;
将编辑后的各所述文字串的文本属性写入到所述目标PDF文档中,并将各所述文字串的文本属性与所有的所述图像层信息进行合并,得到新的图片;
根据所述新的图片,对所述目标图片进行替换,以更新所述PDF文档。
在可选的实施方式中,在响应对各所述文字串对应的文本区域的操作之前,所述方法还包括:
将所述PDF文档以HTML页面打开,并采用canvas插件将所述目标图片绘制在canvas画布;
将所述目标图片在所述PDF文档中的坐标体系转换为所述目标图片在所述canvas画布的坐标体系,得到每个所述文本区域在所述canvas画布的坐标;
根据所述坐标,在所述canvas画布中标记出所有的文本区域。
第二方面,本发明实施例提供一种PDF在线编辑装置,应用于电子设备,所述装置包括文字获取模块、文字解析模块、文字编辑模块以及文档更新模块;
所述文字获取模块用于确定PDF文档中的目标图片,获取所述目标图片的文字层信息;
所述文字解析模块用于对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域;
所述文字编辑模块用于响应对至少一个所述文字串对应的文本区域的操作,对所述文字串的文本属性进行编辑;
所述文档更新模块用于根据编辑后的各所述文字串的文本属性更新所述PDF文档。
第三方面,本发明实施例提供一种电子设备,包括处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如前述实施方式任一所述的PDF在线编辑方法。
第四方面,本发明实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执时如前述实施方式任一所述的PDF在线编辑方法的步骤。
本发明实施例提供的PDF在线编辑方法、装置、电子设备和可读存储介质,在确定PDF文档中的目标图片后,获取目标图片的文字层信息,通过对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域,响应对至少一个文字串对应的文本区域的操作,对文字串的文本属性进行编辑,根据编辑后的各文字串的文本属性更新PDF文档,如此,实现了PDF文档中图片对象的在线编辑,且无需借助第三方工具,工作效率高。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例所提供的电子设备的一种方框示意图。
图2为本发明实施例所提供的PDF在线编辑方法的一种流程示意图。
图3为本发明实施例所提供的PDF在线编辑方法的子步骤流程示意图。
图4为本发明实施例所提供的PDF在线编辑方法的一种实施场景示意图。
图5为本发明实施例所提供的PDF在线编辑方法的另一种实施场景示意图。
图6为本发明实施例所提供的PDF在线编辑方法的另一种流程示意图。
图7为本发明实施例所提供的PDF在线编辑方法的又一种实施场景示意图。
图8为本发明实施例所提供的PDF在线编辑装置的一种方框示意图。
图标:100-电子设备;10-PDF在线编辑装置;11-文字获取模块;12-文字解析模块;13-文字编辑模块;14-文档更新模块;20-存储器;30-处理器;40-通信单元。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
目前,针对PDF文档中图片上的文字层的修改,主要是两种方式,一种是用photoshop、illustrator、coreldraw等专业制图软件重新载入图片原文件,并对其进行对应修改后,重新通过排版工具排版生成PDF文档;另一种是通过Adobe AcrobatProfessional等专业PDF编辑工具,或者通过在PDF阅读器上安装Enfocus PitStop Pro等PDF增强插件在PDF文件上直接修改。这两种方式都借助于其他第三方工具来进行,且修改工作效率太低,另外最大的问题是只能在客户端机器上执行,无法实现云服务方式的在线编辑维护。
基于以上研究,本实施例提供一种PDF在线编辑方法,以改善上述问题。
请参阅图1,本实施例提供的PDF在线编辑方法应用于图1所示的电子设备100,由图1所示的电子设备100执行本实施例所提供的PDF在线编辑方法。如图1所示,本实施例所提供的电子设备100包括PDF在线编辑装置10、存储器20、处理器30和通信单元40。所述存储器20、处理器30及通信单元40各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述PDF在线编辑装置10包括至少一个可以软件或固件(firmware)的形式存储于所述存储器20中或固化在所述电子设备100的操作系统(operating system,OS)中的软件功能模块。所述处理器30用于执行所述存储器20中存储的可执行模块,例如所述PDF在线编辑装置10所包括的软件功能模块及计算机程序等。
其中,所述存储器20可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器20用于存储程序或者数据。
所述处理器30可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述通信单元40用于通过网络建立所述电子设备100与其他电子设备之间的通信连接,并用于通过所述网络收发数据,例如,电子设备100可通过通信单元40与其他电子设备连接。
可以理解,图1所示的结构仅为示意,所述电子设备100还可包括图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
基于图1所示的电子设备的实现架构,请结合参阅图2,图2为本实施例所提供的叠料检测方法的流程示意图,由本实施例所提供的电子设备100执行。下面对图2所示的流程示意图进行详细阐述。
步骤S10:确定PDF文档中的目标图片,获取目标图片的文字层信息。
步骤S20:对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域。
步骤S30:响应对至少一个文字串对应的文本区域的操作,对文字串的文本属性进行编辑。
可选的,在本实施例中,对文本区域的操作,可以是点击操作、滑动操作以及悬浮操作等。当操作为点击操作时,即表示对文本区域进行点击,其中,点击操作可以是单击操作,也可以是双击操作。当操作为滑动操作时,即表示在文本区域进行滑动。当操作为悬浮操作时,即表示悬浮在文本区域。
步骤S40:根据编辑后的各文字串的文本属性更新PDF文档。
本实施例所提供的PDF在线编辑方法,通过获取目标图片所有的文字层信息,通过对所有的文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域,响应对各文字串对应的文本区域的操作,对文字串的文本属性进行编辑,根据编辑后的各文字串的文本属性更新PDF文档,如此,实现了PDF文档中图片对象的在线便捷,且无需借助第三方工具,工作效率高,实现了对图片文字层信息的简易在线编辑维护。
可选的,在本实施例中,在获取目标图片的文字层信息的同时,还可以获取目标图片中的图像层信息。
作为一种可选的实施方式,针对PDF文档中的图片,在确定目标图片(即需要编辑的图片)后,对该目标图片进行解析,提取该目标图片的图像信息,即可获取得到目标图片中的文字层信息和图像层信息。
可选的,在本实施例中,图像层信息则包括目标图片中的图像元素,包括线条、线条颜色、宽度、坐标位置等信息。文字层信息包括每个文字的内容、字体、字号、坐标位置、倾斜度、书写方向以及字形(是否是粗斜体)、颜色等信息。
其中,可通过在目标图片上建立坐标系,得到每个文字的坐标位置,坐标位置包括文字的横坐标以及纵坐标。
在获取得到目标图片的文字层信息后,通过对文字层信息进行解析整合,即可得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域。
作为一种可选的实施方式,请结合参阅图3,在本实施例中,对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域的步骤可以包括步骤S21至步骤S23。
步骤S21:根据每个文字的倾斜度,对每个文字进行聚合,得到至少一个字符串。
步骤S22:针对每个字符串,根据该字符串所包括的每个文字的坐标位置对该字符串所包括的每个文字进行排序。
步骤S23:根据每个文字的字号,对排序后的每个文字进行合并,得到至少一个文字串以及各文字串的文本区域。
其中,在获取得到目标图片的文字层信息后,判断文字层信息中每个文字的倾斜度是否相同,将倾斜度相同的文字进行聚合,得到多个字符串。
可以理解地,若某个文字的倾斜度与其他的文字的倾斜度均不相同,可将该文字单独作为一个字符串。
在得到多个字符串后,针对每个字符串,根据该字符串所包括的每个文字的坐标位置对该字符串所包括的每个文字进行排序。
通过对字符串所包括的每个文字进行排序,可得到字符串中每个文字之间的相对位置,从而得到字的位于同一水平位置的文字以及位于同一水平的文字之间的排序关系,即先后顺序。
例如,对图4所示的图片提取文字层信息,可得到每个图4中的每个数字,字母以及标点符号,如对图4提取文字层信息,可得到“2”、“b”、“2”、“a”、“a”,然后根据文字的倾斜度进行聚合,可将倾斜度相同的文字聚合在一起,由于图4中的“2”、“b”、“2”、“a”、“a”的倾斜度相同,则可聚合在一起,得到字符串2b2aa。针对字符串2b2aa根据每个文字的坐标位置进行排序,则可以得到“2”、“b”相邻且位于同一高度,即纵坐标相同,“2”、“a”相邻且位于同一高度,a单独位于一水平高度。
在对每个字符串所包括的每个文字进行排序后,根据每个文字的字号,对排序后的每个文字进行合并,即可得到至少一个文字串以及各文字串的文本区域。其中,每个文字串的文本属性包括该文字串所包括的每个文字的内容、字体、字号、坐标位置以及倾斜度等。
可选的,在本实施例中,根据每个文字的字号,对排序后的每个文字进行合并,得到至少一个文字串以及各文字串的文本区域的步骤包括:
根据每个文字的字号,获取每个文字对应的合并区间。
根据每个文字的坐标位置以及字号,得到每个文字的最大坐标和最小坐标。
根据每个文字的最大坐标和最小坐标,计算每个文字和与该文字相邻的文字之间的最近距离。
针对每个文字,若该文字和与该文字相邻的文字之间的距离位于该文字的合并区间内,则将该文字和与该文字相邻的文字进行合并,并继续计算合并后的文字和与该合并后的文字相邻的文字之间的最近距离,若计算到的最近距离位于该合并后的文字的合并区间内,则将合并后的文字和与该合并后的文字相邻的文字进行合并,直至最新合并后的文字和与最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内,根据最新合并后的文字,得到第一文字串,并根据最新合并后的文字的字号以及坐标位置,得到第一文字串的文本区域。
若该文字和与该文字相邻的文字之间的距离未位于该文字的合并区间内,将该文字作为第二文字串,并根据该文字的字号以及坐标位置,得到所述第二文字串的文本区域。
其中,针对不同的字号,可以设定不同的合并区间。而根据每个文字的字号,可得到每个文字的宽度和长度,在得到每个文字的宽度和长度,再结合每个文字的坐标位置,每个文字的坐标位置为该文字的中心位置坐标,即可以得到每个文字最大坐标和最小坐标,如图4中的数字2,首先根据该数字的字号,可得到该数字的宽度和长度,然后根据该数字的宽度和长度以及该数字的中心位置坐标,得到该数字的最大坐标(x1,y1)和最小坐标(x1,y2)。又例如,图4中的“b”,首先根据该字母的字号,可得到该数字的宽度和长度,然后根据该数字的宽度和长度以及该数字的中心位置坐标,得到该数字的最大坐标(x3,y3)和最小坐标(x4,y4)。
在得到每个文字的最大坐标和最小坐标后,根据每个文字的最大坐标和最小坐标计算每个文字和与该文字相邻的文字之间的最近距离。例如,相邻的A和B,A最大坐标为a1为(m1,n1),最小坐标a2为(m2,y2),B最大坐标b1为(m3,n3),最小坐标b2为(m4,y4),分别计算a1到b1、a1到b2、a2到b1以及a2到b2的距离,其中距离最小的则为最近距离。
针对每个文字,在计算得到该文字和与该文字相邻的文字之间的最近距离后,判断该文字和与该文字相邻的文字之间的距离是否处于该文字的合并区间内,若位于该文字的合并区间内,则将该文字和与该文字相邻的文字进行合并,并继续计算合并后的文字和与该合并后的文字相邻的文字之间的最近距离,若计算到的最近距离位于该合并后的文字的合并区间内,则将合并后的文字和与该合并后的文字相邻的文字进行合并,直至最新合并后的文字和与最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内。
例如,根据坐标位置排序后,得到A、B、C相邻,则先计算A与B之间的最近距离,若A与B之间的最近距离位于A与B的合并区间内,则将A和B合并,得到AB,然后计算AB与C之间的最近距离,若AB与C之间的最近距离位于AB的合并区间内,则将AB与C进行合并,得到ABC。若AB与C之间的最近距离未位于AB的合并区间内,则无需将AB与C进行合并。
可选的,为了提高准确性,在本实施例中,在计算AB与C之间的最近距离时,以B为准,计算B与C之间的最近距离,以B和C之间的最近距离,作为AB与C之间的最近距离,同时也以B的合并区间作为AB的合并区间,即作为合并后的文字的合并区间。
进一步的,若最新合并后的文字和与最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内,则最新合并后的文字可作为第一文字串,而对于与最新合并后的文字相邻的文字,则以该文字为起点,继续计算该文字和与该文字相邻的文字之间的最近距离,直至最后一个文字。
在得到最新合并后的文字后,即可将最新合并后的文字作为第一文字串,然后根据最新合并后的文字的字号以及坐标位置,即根据最新合并后的文字中的每个文字的字号以及坐标位置,确定第一文字串的文本区域,其中,最新合并后的文字中的每个文字需包括在文本区域,如图5所示,每个文字串所对应的矩形框,即为该文字串的文本区域。
进一步的,针对每个文字,若该文字和与该文字相邻的文字之间的距离未位于该文字的合并区间内,将该文字作为第二文字串,即以单独的文字作为文字串,并根据该文字的字号以及坐标位置,得到第二文字串的文本区域。
由于在实际应用中,文字之中可能会存在上下标,因此,在对文字进行合并时,还需要判断文字是否属于上标。因此,在本实施例中,根据每个文字的字号,对排序后的每个文字进行合并的步骤包括:
针对每个文字,判断与该文字相邻的文字的字号是否为该文字的预设倍数;
若是,根据该文字相邻的文字的坐标位置以及该文字的坐标位置,确定与该文字相邻的文字属于该文字的上标或下标。
若与该文字相邻的文字属于该文字的上标,则按照上标的格式,将与该文字相邻的文字和该文字进行合并。
若与该文字相邻的文字属于该文字的下标,则按照下标的格式,将与该文字相邻的文字和该文字进行合并。
由于文字的上下标的字号一般为文字的字号的60%,因此,在本实施例中,预设倍数可以为60%。
若与该文字相邻的文字的字号为该文字的60%,则判定与该文字相邻的文字为该文字的上标或下标。
具体地,可根据该文字相邻的文字的坐标位置以及该文字的坐标位置,确定与该文字相邻的文字属于该文字的上标或下标。若属于该文字的上标,则按照上标的格式,将与该文字相邻的文字和该文字进行合并。若属于该文字的下标,则按照下标的格式,将与该文字相邻的文字和该文字进行合并。
作为一种可选的实施方式,针对每个文字,本实施例还可以根据该文字的坐标位置和与该文字相邻的文字的坐标位置的偏移距离来判断相邻的文字是否属于该文字的上标或下标。
若该文字的坐标位置和与该文字相邻的文字的坐标位置的偏移距离,判断该偏移距离是否在预设范围内,则判定与该文字相邻的文字属于该文字的上标或下标。
可选的,在本实施例中,可采用XML文本标识表示每个文字串以及每个文字串的文本属性。
为了便于用户对文字串的文本属性进行编辑,可选的,在本实施例中,在得到各文字串的文本属性以及各文字串对应的文本区域后,可将各文字串对应的文本区域进行标记。
通过对文本区域进行标记,在编辑文字串时,只需用户对标记后的文本区域进行操作,即可显示出该文字串的文本属性,进而对文本属性进行编辑。
由于在实际应用中,PDF文档中除了图片之外,还有文字段落、表格、公式等各种文档元素,为了提高用户操作的便捷性,本实施例以HTML页面打开PDF文档,对每个文字串的文本区域进行标记。可选的,如图6所示,可通过步骤S50至步骤S70实现:
步骤S50:将PDF文档以HTML页面打开,并采用canvas插件将目标图片绘制在canvas画布。
步骤S60:将目标图片在PDF文档中的坐标体系转换为目标图片在canvas画布的坐标体系,得到每个文本区域在canvas画布的坐标。
步骤S70:根据坐标,在canvas画布中标记出所有的文本区域。
其中,在用HTML页面打开PDF文档后,采用canvas将目标图片绘制在canvas画布中,然后将目标图片在PDF文档中的坐标体系转换为目标图片在canvas画布的坐标体系,得到目标图片在canvas画布的坐标,进而得到每个文本区域在canvas画布的坐标,然后根据每个文本区域在canvas画布的坐标,对每个文本区域进行标记。
在标记出文本区域后,为了便于用户对文字串的文本属性进行修改,可选的,本实施例所提供的PDF在线编辑方法还包括:
响应对至少一个文字串对应的文本区域的操作,提取得到文字串的文本属性,并在目标区域进行显示,响应对目标区域的编辑操作,对文字串的文本属性进行编辑。
其中,在对每个文本区域进行标记后,若用户需要对文字串进行修改时,即可对该文字串标记后的文本区域进行操作,即可提取得到该文字串的文本属性,然后将提取到的文本属性,在目标区域中进行显示,例如,对某个文字串的文本区域进行单击操作或双击操作时,该文字串的文本属性则会显示在目标区域中。又例如,在某个文字串的文本区域进行滑动操作时,该文字串的文本属性则会显示在目标区域中。
在将文字串的文本属性显示在目标区域,则响应用户对目标区域中的编辑操作,对文字串的文本属性进行编辑。如图7所示,对“2b”的文本区域进行操作,则会在图下方出现目标区域,并在目标区域中显示“2b”的文本属性,在目标区域中显示文本属性后,用户即可对显示的文本属性进行修改。
可选的,在本实施例中,在对文本属性进行修改时,可调用任意一个编辑器即可,例如,用HTML页面打开的PDF文档,则可采用HTML编辑器进行编辑,其中,HTML编辑器支持可视化修改、可重新指定字体字号等信息。又例如,用PDF阅读器打开的PDF文档,则可采用PDF编辑器进行编辑。
在对文字串的文本属性进行编辑后,即可根据编辑后的各文字串的文本属性更新PDF文档。
可选的,在本实施例中,根据编辑后的每个文字串的文本属性更新PDF文档的步骤包括:
新建一目标PDF文档,将图像层信息复制到目标PDF文档中。
将编辑后的各文字串的文本属性写入到目标PDF文档中,并将各文字串的文本属性与图像层信息进行合并,得到新的图片。
根据新的图片,对目标图片进行替换,以更新PDF文档。
可选的,新建的目标PDF文档与目标图片具有相同幅面,即新建的PDF文档与目标图片大小相同,在新建目标PDF文档后,将之前提取的图像层信息复制到目标PDF文档中,然后编辑后的各文字串的文本属性写入到目标PDF文档中,与图像层信息进行合并,得到新的图片。在得到新的图片后,根据新的图片,对目标图片进行替换,便可以实现PDF文档的更新,从而实现PDF文档图片的在线编辑。
可选的,在本实施例中,为了便于将编辑后的各文字串的文本属性写入到目标PDF文档中,在对文字串的文本属性进行编辑时,编辑后的文字串以及文字串的文本属性被保存在一临时文件夹中,在将编辑后的各文字串的文本属性写入到目标PDF文档时,只需要读取该文件夹即可。
需要说明的是,在将各文字串的文本属性与图像层信息进行合并时,各文字的坐标位置与图像层信息中的图像位置保持不变,均为原有坐标位置。
本实施例所提供的PDF在线编辑方法,通过对PDF文档中图片的文字层信息进行解析整合,得到多个文字串以及每个文字串的文本属性,通过对各文字串的文本属性进行编辑,将编辑后的各文字串的文本属性与图像层信息进行合并,形成新的图片对象,实现了PDF文档中图片对象的在线编辑,无需借助第三方工具,大大降低针对PDF文件在线编校修改时的难度,工作效率高。并且,结合目前已有的XML在线编校的文字、表格、公式等修改工具,可以完整实现对PDF文档中全体对象的在线维护。
基于同一发明构思,请结合参阅图8,本实施例提供一种PDF在线编辑装置10,应用于电子设备,所述装置包括文字获取模块11、文字解析模块12、文字编辑模块13以及文档更新模块14。
文字获取模块11用于确定PDF文档中的目标图片,获取目标图片的文字层信息。
文字解析模块12用于对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和每个文字串对应的文本区域。
文字编辑模块13用于响应对至少一个文字串对应的文本区域的操作,对文字串的文本属性进行编辑。
文档更新模块14用于根据编辑后的各文字串的文本属性更新PDF文档。
在上述基础上,本实施例还提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执时如前述实施方式任一所述的PDF在线编辑方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和可读存储介质的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
综上所述,本发明实施例提供的PDF在线编辑方法、装置和电子设备,在确定PDF文档中的目标图片后,获取目标图片的文字层信息,通过对文字层信息进行解析整合,得到至少一个文字串以及各文字串的文本属性和各文字串对应的文本区域,响应对至少一个文字串对应的文本区域的操作,提取得到文字串的文本属性,并在目标区域进行显示,并响应对目标区域的编辑操作,对文字串的文本属性进行编辑,根据编辑后的各文字串的文本属性更新PDF文档,如此,实现了PDF文档中图片对象的在线编辑,且无需借助第三方工具,工作效率高。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (4)
1.一种PDF在线编辑方法,其特征在于,应用于电子设备,所述方法包括:
确定PDF文档中的目标图片,获取所述目标图片的文字层信息;
对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域;
响应对至少一个所述文字串对应的文本区域的操作,对所述文字串的文本属性进行编辑;
根据编辑后的各所述文字串的文本属性更新所述PDF文档;
所述文字层信息包括每个文字的字号、坐标位置、字体以及倾斜度;所述对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域的步骤包括:
根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到至少一个字符串;
针对每个字符串,根据该字符串所包括的每个文字的坐标位置对该字符串所包括的每个文字进行排序;
根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域;其中,每个所述文字串的文本属性包括该文字串所包括的每个所述文字的内容、字体、字号、坐标位置以及倾斜度;
所述根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域的步骤包括:
根据每个所述文字的字号,获取每个所述文字对应的合并区间;
根据每个所述文字的坐标位置以及字号,得到每个所述文字的最大坐标和最小坐标;
根据每个所述文字的最大坐标和最小坐标,计算每个所述文字和与该文字相邻的文字之间的最近距离;
针对每个所述文字,若该文字和与该文字相邻的文字之间的距离位于该文字的合并区间内,则将该文字和与该文字相邻的文字进行合并,并继续计算合并后的文字和与该合并后的文字相邻的文字之间的最近距离,若计算到的最近距离位于该合并后的文字的合并区间内,则将合并后的文字和与该合并后的文字相邻的文字进行合并,直至最新合并后的文字和与该最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内,根据该最新合并后的文字,得到第一文字串,并根据该最新合并后的文字的字号以及坐标位置,得到所述第一文字串的文本区域;
若该文字和与该文字相邻的文字之间的距离未位于该文字的合并区间内,将该文字作为第二文字串,并根据该文字的字号以及坐标位置,得到所述第二文字串的文本区域;
所述根据每个所述文字的字号,对排序后的每个所述文字进行合并的步骤包括:
针对每个所述文字,判断与该文字相邻的文字的字号是否为该文字的预设倍数;
若是,根据该文字相邻的文字的坐标位置以及该文字的坐标位置,确定与该文字相邻的文字属于该文字的上标或下标;
若与该文字相邻的文字属于该文字的上标,则按照上标的格式,将与该文字相邻的文字和该文字进行合并;
若与该文字相邻的文字属于该文字的下标,则按照下标的格式,将与该文字相邻的文字和该文字进行合并;
所述根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到多个字符串的步骤包括:
根据各所述文字的倾斜度,将倾斜度相同的文字进行聚合,得到多个字符串;
在确定PDF文档中的目标图片,获取所述目标图片所有的文字层信息后,还包括:
获取所述目标图片的图像层信息;
所述根据编辑后的各所述文字串的文本属性更新所述PDF文档的步骤包括:
新建一目标PDF文档,将所述图像层信息复制到所述目标PDF文档中;
将编辑后的各所述文字串的文本属性写入到所述目标PDF文档中,并将各所述文字串的文本属性与所述图像层信息进行合并,得到新的图片;
根据所述新的图片,对所述目标图片进行替换,以更新所述PDF文档;
在响应对至少一个所述文字串对应的文本区域的操作之前,还包括:
将所述PDF文档以HTML页面打开,并采用canvas插件将所述目标图片绘制在canvas画布;
将所述目标图片在所述PDF文档中的坐标体系转换为所述目标图片在所述canvas画布的坐标体系,得到每个所述文本区域在所述canvas画布的坐标;
根据所述坐标,在所述canvas画布中标记出所有的文本区域。
2.一种PDF在线编辑装置,其特征在于,应用于电子设备,所述装置包括文字获取模块、文字解析模块、文字编辑模块以及文档更新模块;
所述文字获取模块用于确定PDF文档中的目标图片,获取所述目标图片的文字层信息;
所述文字解析模块用于对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域;
所述文字编辑模块用于响应对至少一个所述文字串对应的文本区域的操作,对所述文字串的文本属性进行编辑;
所述文档更新模块用于根据编辑后的各所述文字串的文本属性更新所述PDF文档;
所述文字层信息包括每个文字的字号、坐标位置、字体以及倾斜度;所述对所述文字层信息进行解析整合,得到至少一个文字串以及各所述文字串的文本属性和各所述文字串对应的文本区域的步骤包括:
根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到至少一个字符串;
针对每个字符串,根据该字符串所包括的每个文字的坐标位置对该字符串所包括的每个文字进行排序;
根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域;其中,每个所述文字串的文本属性包括该文字串所包括的每个所述文字的内容、字体、字号、坐标位置以及倾斜度;
所述根据每个所述文字的字号,对排序后的每个所述文字进行合并,得到至少一个文字串以及各所述文字串的文本区域的步骤包括:
根据每个所述文字的字号,获取每个所述文字对应的合并区间;
根据每个所述文字的坐标位置以及字号,得到每个所述文字的最大坐标和最小坐标;
根据每个所述文字的最大坐标和最小坐标,计算每个所述文字和与该文字相邻的文字之间的最近距离;
针对每个所述文字,若该文字和与该文字相邻的文字之间的距离位于该文字的合并区间内,则将该文字和与该文字相邻的文字进行合并,并继续计算合并后的文字和与该合并后的文字相邻的文字之间的最近距离,若计算到的最近距离位于该合并后的文字的合并区间内,则将合并后的文字和与该合并后的文字相邻的文字进行合并,直至最新合并后的文字和与该最新合并后的文字相邻的文字之间的最近距离未位于该最新合并后的文字的合并区间内,根据该最新合并后的文字,得到第一文字串,并根据该最新合并后的文字的字号以及坐标位置,得到所述第一文字串的文本区域;
若该文字和与该文字相邻的文字之间的距离未位于该文字的合并区间内,将该文字作为第二文字串,并根据该文字的字号以及坐标位置,得到所述第二文字串的文本区域;
所述根据每个所述文字的字号,对排序后的每个所述文字进行合并的步骤包括:
针对每个所述文字,判断与该文字相邻的文字的字号是否为该文字的预设倍数;
若是,根据该文字相邻的文字的坐标位置以及该文字的坐标位置,确定与该文字相邻的文字属于该文字的上标或下标;
若与该文字相邻的文字属于该文字的上标,则按照上标的格式,将与该文字相邻的文字和该文字进行合并;
若与该文字相邻的文字属于该文字的下标,则按照下标的格式,将与该文字相邻的文字和该文字进行合并;
所述根据每个所述文字的倾斜度,对每个所述文字进行聚合,得到多个字符串的步骤包括:
根据各所述文字的倾斜度,将倾斜度相同的文字进行聚合,得到多个字符串;
在确定PDF文档中的目标图片,获取所述目标图片所有的文字层信息后,还包括:
获取所述目标图片的图像层信息;
所述根据编辑后的各所述文字串的文本属性更新所述PDF文档的步骤包括:
新建一目标PDF文档,将所述图像层信息复制到所述目标PDF文档中;
将编辑后的各所述文字串的文本属性写入到所述目标PDF文档中,并将各所述文字串的文本属性与所述图像层信息进行合并,得到新的图片;
根据所述新的图片,对所述目标图片进行替换,以更新所述PDF文档;
在响应对至少一个所述文字串对应的文本区域的操作之前,还包括:
将所述PDF文档以HTML页面打开,并采用canvas插件将所述目标图片绘制在canvas画布;
将所述目标图片在所述PDF文档中的坐标体系转换为所述目标图片在所述canvas画布的坐标体系,得到每个所述文本区域在所述canvas画布的坐标;
根据所述坐标,在所述canvas画布中标记出所有的文本区域。
3.一种电子设备,其特征在于,包括处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如权利要求1所述的PDF在线编辑方法。
4.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执时如权利要求1所述的PDF在线编辑方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011326606.6A CN112417826B (zh) | 2020-11-24 | 2020-11-24 | Pdf在线编辑方法、装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011326606.6A CN112417826B (zh) | 2020-11-24 | 2020-11-24 | Pdf在线编辑方法、装置、电子设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112417826A CN112417826A (zh) | 2021-02-26 |
CN112417826B true CN112417826B (zh) | 2021-07-02 |
Family
ID=74777481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011326606.6A Active CN112417826B (zh) | 2020-11-24 | 2020-11-24 | Pdf在线编辑方法、装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112417826B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113378524A (zh) * | 2021-06-07 | 2021-09-10 | 北京百度网讯科技有限公司 | 更新文档的存储信息的方法、装置、设备和存储介质 |
CN115618847B (zh) * | 2022-12-20 | 2023-03-14 | 浙江保融科技股份有限公司 | 一种解析pdf文档的方法、装置和可读存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218839A (zh) * | 2012-01-19 | 2013-07-24 | 圣侨资讯事业股份有限公司 | 可在图片建立标记的在线编辑方法及其系统 |
CN102760300B (zh) * | 2012-05-24 | 2016-02-03 | 深圳万兴信息科技股份有限公司 | 一种pdf文档编辑器和pdf文档编辑方法 |
CN104239313B (zh) * | 2013-06-09 | 2019-07-30 | 百度在线网络技术(北京)有限公司 | 基于移动终端的屏幕中显示文字的搜索方法与移动终端 |
US10915707B2 (en) * | 2017-10-20 | 2021-02-09 | MachineVantage, Inc. | Word replaceability through word vectors |
CN110110258A (zh) * | 2018-02-01 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 一种文字转换的方法、装置以及电子设备 |
US10614118B2 (en) * | 2018-02-28 | 2020-04-07 | Microsoft Technology Licensing, Llc | Increasing inclusiveness of search result generation through tuned mapping of text and images into the same high-dimensional space |
CN109710902A (zh) * | 2018-08-17 | 2019-05-03 | 深圳壹账通智能科技有限公司 | Pdf文档的生成方法、装置、设备及计算机可读存储介质 |
CN110941947A (zh) * | 2018-09-21 | 2020-03-31 | 广州金山移动科技有限公司 | 一种文档编辑的方法、装置、计算机存储介质及终端 |
CN111814801B (zh) * | 2020-08-25 | 2022-03-15 | 电子科技大学 | 一种机械图中标注串的提取方法 |
-
2020
- 2020-11-24 CN CN202011326606.6A patent/CN112417826B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112417826A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8718364B2 (en) | Apparatus and method for digitizing documents with extracted region data | |
CN108399072B (zh) | 应用页面更新方法和装置 | |
CN112417826B (zh) | Pdf在线编辑方法、装置、电子设备和可读存储介质 | |
US8804139B1 (en) | Method and system for repurposing a presentation document to save paper and ink | |
JPH10124495A (ja) | 原稿テキスト生成処理装置及びそのプログラム記憶媒体 | |
CN109656652B (zh) | 网页图表绘制方法、装置、计算机设备和存储介质 | |
CN110990010A (zh) | 一种软件界面代码的生成方法及装置 | |
CN109815243B (zh) | 一种文档界面化修改时的结构化存储方法和装置 | |
JP5521384B2 (ja) | 書籍掲載文書の電子的な編集・内容変更システム、書籍掲載文書の電子的な編集・内容変更プログラムおよび書籍作成システム | |
US20080037051A1 (en) | Document display processor, computer readable medium storing document display processing program, computer data signal and document display processing method | |
JP3083314B2 (ja) | 文書処理方法及び装置 | |
KR20210116371A (ko) | 이미지 처리 방법, 장치, 전자장비, 컴퓨터 판독가능 저장 매체 및 컴퓨터 프로그램 | |
CN106776527B (zh) | 电子书数据的显示方法、装置及终端设备 | |
CN107861931B (zh) | 模板文件处理方法、装置、计算机设备和存储介质 | |
CN116311300A (zh) | 表格生成方法、装置、电子设备以及存储介质 | |
CN113255369B (zh) | 文本相似度分析的方法、装置及存储介质 | |
US8347209B2 (en) | Structured document drawing system, and method and program therefor | |
JP5645481B2 (ja) | 装置、方法、及びプログラム | |
KR101097835B1 (ko) | 클립보드의 데이터 클리어 포매팅 방법, 파일 경로 추출을 통한 클립보드의 데이터 변환 방법, 이들의 프로그램 기록매체 및 이들 방법을 이용한 장치 | |
JP2020115260A (ja) | 情報処理装置、及び情報処理プログラム | |
CN111523288B (zh) | Pdf文档的鸟瞰视图的显示方法及装置 | |
US20130104014A1 (en) | Viewer unit, server unit, display control method, digital comic editing method and non-transitory computer-readable medium | |
JP2011197844A (ja) | 差分検知システム | |
JP2020119152A (ja) | 情報処理装置、及び情報処理プログラム | |
CN115220622B (zh) | 染色体图像编辑方法、分析设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |