CN112434495A - 一种选择方法、装置、计算机设备及存储介质 - Google Patents
一种选择方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112434495A CN112434495A CN202011471610.1A CN202011471610A CN112434495A CN 112434495 A CN112434495 A CN 112434495A CN 202011471610 A CN202011471610 A CN 202011471610A CN 112434495 A CN112434495 A CN 112434495A
- Authority
- CN
- China
- Prior art keywords
- text
- starting point
- cursor position
- line
- constructing
- 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.)
- Pending
Links
- 238000010187 selection method Methods 0.000 title claims abstract description 27
- 238000012217 deletion Methods 0.000 claims description 27
- 230000037430 deletion Effects 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 26
- 230000000694 effects Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 7
- 238000002372 labelling Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 2
- 206010034719 Personality change Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例公开了一种选择方法、装置、计算机设备及其储存介质。该方法包括构建文本的文本数据结构,并建立与文本数据结构对应的光标数据结构;接收用户给定的起点坐标和终点坐标,在文本数据结构中寻找起点坐标的位置和终点坐标的位置,并在光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;根据起点光标位置和终点光标位置确定文本范围,并对文本范围内的文本内容进行选择。本发明实施例通过提供的起点坐标和终点坐标,计算文本数据结构中被选中的区域,具有文本内容选择准确高,便于后续进行标注的优点。
Description
技术领域
本发明实施例涉及文本处理技术领域,尤其涉及一种选择方法、装置、计算机设备及存储介质。
背景技术
目前,常用的版式文档有流式文档和固定版式文档;固定版式文档的页面内容在显示或编辑时,页面中的文本对象是不能换行的;会导致在可查看固定版式文档的应用程序中,以文本段落的结构来选中文本内容,并进行高亮、下划线等标注时,会比较困难。
针对上述问题,现有技术虽然提供很多改进方法,但在显示或编辑时,仍然存在选择效果乱序,得到的选择结果可能不是按照寻常所理解的文本段落的结构来进行选择所得到的结果。
发明内容
本发明实施例的目的是提供一种选择方法、装置、计算机设备及存储介质,旨在解决现有技术中对文本内容进行选择的准确率以及对文本内容进行标记的效果还有待提高的问题。
第一方面,本发明实施例提供了一种选择方法,其包括:
构建文本的文本数据结构,并建立与所述文本数据结构对应的光标数据结构;
接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;
根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择。
第二方面,本发明实施例提供了一种选择装置,其包括:
构建单元,用于构建文本的文本数据结构,并建立与所述文本数据结构对应的光标数据结构;
寻找单元,用于接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;
选择单元,用于根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的选择方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的选择方法。
本发明实施例公开了一种选择方法、装置、计算机设备及其储存介质,该方法包括构建文本的文本数据结构,并建立与文本数据结构对应的光标数据结构;接收用户给定的起点坐标和终点坐标,在文本数据结构中寻找起点坐标的位置和终点坐标的位置,并在光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;根据起点光标位置和终点光标位置确定文本范围,并对文本范围内的文本内容进行选择。本发明实施例通过提供的起点坐标和终点坐标,计算文本数据结构中被选中的区域,具有文本内容选择准确高,便于后续进行标注的优点。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的选择方法的流程示意图;
图2为本发明实施例提供的选择方法的子流程示意图;
图3为本发明实施例提供的选择方法的又一子流程示意图;
图4为本发明实施例提供的选择方法的又一子流程示意图;
图5为本发明实施例提供的选择方法的又一子流程示意图;
图6为本发明实施例提供的选择方法的又一子流程示意图;
图7为本发明实施例提供的选择方法的又一子流程示意图;
图8为本发明实施例提供的选择方法的又一子流程示意图;
图9为本发明实施例提供的选择装置的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例的保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明实施例的说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明实施例。如在本发明实施例的说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明实施例的说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的选择方法的流程示意图;
如图1所示,该方法包括步骤S101~S103。
S101、构建文本的文本数据结构,并建立与文本数据结构对应的光标数据结构。
本实施例中,对文本中所有的文本对象进行分析和辨识,以获得文本单词、文本行、文本段落、文本块以及文本流的逻辑关系,并利用文本单词、文本行、文本段落、文本块以及文本流的逻辑关系构建文本的文本数据结构,同时建立与文本数据结构对应的光标数据结构,通过光标数据结构记录对应的文本流对象、文本块对象、文本段落对象、文本行对象、文本单词对象以及它们的下标和虚拟字符的下标,可以精确定位到任意文本单词中的任意一个虚拟字符的前方或者后方,通过这些光标信息,可指定出要操作的文本位置或者文本范围。
本发明实施例可应用于固定版式文档,如PDF文档,在可查看固定版式文档的应用程序中,以文本段落的结构来选中文本内容,并进行高亮、下划线等标注时,具有选择准确,以便进行标注的优点。
在一实施例中,如图2所示,步骤S101包括:
S201、确认文本中的文本对象,并依次逐级构建出文本单词、文本行、文本段落、文本块、文本流以及文本板面对象;
S202、将构建的选择文本板面对象作为文本数据结构。
本实施例中,构建文本板面对象的过程即为构建文本数据结构的过程:由一个或多个文本对象构建文本单词,选择文本单词中包含虚拟字符与文本对象中实际字符之间的映射关系;由一个或多个文本单词构建文本行;由一个或多个文本行构建文本段落;由一个或多个文本段落构建文本块;由一个或多个文本块构建文本流;由一个或多个文本流构建文本板面对象。通过一层层逐级构建,从而构建出文本板面对象。
S102、接收用户给定的起点坐标和终点坐标,在文本数据结构中寻找起点坐标的位置和终点坐标的位置,并在光标数据结构中分别匹配出对应的起点光标位置和终点光标位置。
本实施例中,起点坐标和终点坐标均为文本数据结构中的位置点,在文本数据结构中寻找起点坐标和终点坐标的位置是为了对文本数据结构内的文本进行选择,在寻找到起点坐标和终点坐标的位置后,基于光标数据结构,可在起点坐标和终点坐标的位置通过光标的形式进行显示,便于用户直接查看到具体的位置点,便于用户输入准确起点坐标和终点坐标以准确的选择文本范围。
在一实施例中,如图3所示,步骤S102包括:
S301、在所有文本流中寻找出选择起点坐标所在的第一文本块,并构建第一文本块备选集合;以及在所有文本流中寻找出选择终点坐标所在的第二文本块,并构建第二文本块备选集合;
S302、在选择第一文本块备选集合中寻找出选择起点坐标所在的第一文本段落,并构建第一文本段落备选集合;以及在选择第二文本块备选集合中寻找出选择终点坐标所在的第二文本段落,并构建第二文本段落备选集合;
S303、在选择第一文本段落备选集合中寻找出选择起点坐标所在的第一文本行,并构建第一文本行落备选集合;以及在选择第二文本段落备选集合中寻找出选择终点坐标所在的第二文本行,并构建第二文本行备选集合;
S304、在选择第一文本行备选集合中寻找出选择起点坐标落所在的第一文本单词,并构建第一文本单词备选集合;以及在选择第二文本行备选集合中寻找出选择终点坐标所在的第二文本单词,并构建第二文本单词备选集合;
S305、在选择第一文本单词备选集合中寻找出选择起点坐标所在的第一虚拟字符,并构建第一虚拟字符备选集合;以及在选择第二文本单词备选集合中寻找出选择终点坐标所在的第二虚拟字符,并构建第二虚拟字符备选集合;
S306、基于选择光标数据结构,在选择第一虚拟字符备选集合选出与选择起点坐标的距离最接近的第一光标位置,并构建第一光标备选集合;以及在选择第二虚拟字符备选集合中选出与选择终点坐标的距离最接近的第二光标位置,并构建第二光标备选集合;
S307、从选择第一光标备选集合中选择直线距离最接近选择起点坐标的第一光标位置,作为起点光标位置;以及从选择第二光标备选集合中选择直线距离最接近选择终点坐标的第二光标位置,作为终点光标位置。
本实施例中,在文本数据结构中寻找起点坐标并在光标数据结构中匹配出对应的起点光标位置的过程:逐一在每个文本流中寻找出起点坐标落在文本流边界区域内的所有第一文本块,并构建第一文本块备选集合,即确认了起点坐标落在第一文本块备选集合中的第一文本块内,这样可初步缩小起点坐标的寻找范围;然后继续在每个第一文本块中寻找出起点坐标落在第一文本块边界区域内的所有第一文本段落,并构建第一文本段落备选集合,即确认了起点坐标落在第一文本段落备选集合中的第一文本段落内,这样可进一步缩小起点坐标的寻找范围;可以理解的,使用相同的方法,继续寻找并依次构建第一文本行备选集合、第一文本单词备选集合以及第一虚拟字符备选集合,通过逐级向下寻找并确认起点坐标落在第一虚拟字符备选集合中的第一虚拟字内;然后基于光标数据结构,将第一虚拟字符备选集合中的所有第一虚拟字符对应的第一光标位置的字符原点与起点坐标进行比较,选出与起点坐标最接近的第一光标位置,并构建第一光标备选集合,需要说明的是,第一光标位置包括字符前方和字符后方的光标位置;最后再从第一光标备选集合中选择直线距离最接近起点坐标的第一光标位置,作为起点光标位置。
在文本数据结构中寻找终点坐标并在光标数据结构中匹配出对应的终点光标位置的过程:与寻找起点坐标和匹配起点光标位置的过程相同,从文本流开始逐层向下寻找并构建第二文本块备选集合、第二文本段落备选集合、第二文本行备选集合、第二文本单词备选集合以及第二虚拟字符备选集合,即最终确认了终点坐标落在第二虚拟字符备选集合中的第二虚拟字内;然后基于光标数据结构,将第二虚拟字符备选集合中的所有第二虚拟字符对应的第二光标位置的字符原点与终点坐标进行比较,选出与终点坐标最接近的第二光标位置,并构建第二光标备选集合,需要说明的是,第二光标位置包括字符前方和字符后方的光标位置;最后再从第二光标备选集合中选择直线距离最接近终点坐标的第二光标位置,作为起点光标位置。
在一实施例中,如图4所示,步骤S102还包括:
S401、若未能在选择第一文本单词备选集合中寻找出选择起点坐标所在的第一虚拟字符;以及未能在选择第二文本单词备选集合中寻找出选择终点坐标所在的第二虚拟字符;
S402、则在所有文本流中寻找出选择起点坐标距离最近的第一文本块,并构建第一文本块备选集合;以及在所有文本流中寻找出选择终点坐标距离最近的第二文本块,并构建第二文本块备选集合;
S403、在选择第一文本块备选集合中寻找出选择起点坐标距离最近的第一文本段落,并构建第一文本段落备选集合;以及在选择第二文本块备选集合中寻找出选择终点坐标距离最近的第二文本段落,并构建第二文本段落备选集合;
S404、在选择第一文本段落备选集合中寻找出选择起点坐标距离最近的第一文本行,并构建第一文本行备选集合;以及在选择第二文本段落备选集合中寻找出选择终点坐标距离最近的第二文本行,并构建第二文本行备选集合;
S405、在选择第一文本行备选集合中寻找出选择起点坐标距离最近的第一文本单词,并构建第一文本单词备选集合;以及在选择第二文本行备选集合中寻找出选择终点坐标距离最近的第二文本单词,并构建第二文本单词备选集合;
S406、在选择第一文本单词备选集合中寻找出选择起点坐标距离最近的第一虚拟字符,并构建第一虚拟字符备选集合;以及在选择第二文本单词备选集合中寻找出选择终点坐标距离最近的第二虚拟字符,并构建第二虚拟字符备选集合。
本实施例中,上述寻找起点坐标和终点坐标的过程中,若未能寻找任何第一虚拟字符和第二虚拟字符,也就是说起点坐标和终点坐标的位置没有落入任何的第一虚拟字符和第二虚拟字符中,则需重新寻找起点坐标和终点坐标的位置。
具体的,重新寻找第一虚拟字符的过程:逐一在每个文本流中寻找出起点坐标距离(这里的距离指起点坐标与文本流的矩形区域最相近的两条边的最短距离作为两条直角边所组成的三角形的斜边长度)文本流边界区域最近的第一文本块,并构建第一文本块备选集合;然后继续在第一文本块中寻找出起点坐标距离(这里的距离指二者与文本书写方向相同的边的最短距离)第一文本块边界区域最近的第一文本段落,并构建第一文本段落备选集合;然后继续在第一文本段落中寻找出起点坐标距离(这里的距离指二者与文本书写方向相同的边的最短距离)第一文本段落边界区域最近的第一文本行,并构建第一文本行集合;然后继续在第一文本行中寻找出起点坐标距离(这里的距离指二者与文本书写方向垂直的边的最短距离)第一文本行边界区域最近的第一文本单词,并构建第一文本单词集合;然后继续在第一文本单词中寻找出起点坐标距离(这里的距离指二者与文本书写方向垂直的边的最短距离)第一文本单词边界区域最近的第一虚拟字符,并构建第一虚拟字符集合;这样即可得到第一虚拟字符。
具体的,重新寻找第二虚拟字符的过程:与重新寻找第一虚拟字符的原理相同,逐级向下依次构建第二文本块备选集合、第二文本段落备选集合、第二文本行备选集合、第二文本单词备选集合以及第二虚拟字符备选集合,这样即可得到第二虚拟字符。
S103、根据起点光标位置和终点光标位置确定文本范围,并对文本范围内的文本内容进行选择。
本实施例中,起点光标位置和终点光标位置再文本数据结构中均是一个具体的位置点,两个具体的位置点可以确定一个具体的文本范围,根据这一文本范围,结合文本范围内文本段落结构和字符属性,可以在用户的操作界面中进行显示,或者在文本范围内增加相关的标记。
在一实施例中,如图5所示,步骤S103包括:
S501、根据起点光标位置和终点光标位置,确定对应的文本范围;
S502、基于文本数据结构中记录的文本行的顺序,若文本行未全部落入文本范围内,则从文本行的行首或者起点光标位置开始,逐个获取每一字符的矩形区域,并将每一字符的矩形区域进行合并,直至遇到行尾或者终点光标位置,并将合并后的矩形区域加入高亮区域集合中;
S503、若文本行全部落入文本范围内,则直接将整个文本行的矩形区域加入高亮区域集合中;
S504、根据高亮区域集合中的矩形区域在用户界面上显示高亮效果,或者在文本下添加文本高亮标注。
本实施例中,从起点光标位置开始,按照文本段落数据结构所记录的顺序,对每一文本行执行构建高亮区域集合的步骤:
首先,若文本行不是整行都在文本范围内,则从起点光标位置或文本行的行首开始,逐个获取每一字符的矩形区域,并将每一字符的矩形区域进行合并,直到遇到文本行的行尾或者终点光标位置,然后将此次合并后的矩形区域加入高亮区域集合中;其次,若文本行是整行都在文本范围内,则直接将整个文本行的矩形区域加入高亮区域集合中;最后,在获取文本行的矩形区域的过程中,当遇见终点光标位置后整个获取过程结束,将最后合并的矩形区域加入高亮区域集合中,结束高亮区域集合的构建;根据高亮区域集合中的矩形区域,在用户界面中显示高亮效果,或者在文本中添加高亮标注。
在一实施例中,如图6所示,步骤S104包括:
S601、根据起点光标位置和终点光标位置,确定对应的文本范围;
S602、基于文本数据结构中记录的文本行的顺序,若文本行未全部落入文本范围内,则从文本行的行首或者起点光标位置开始,将第一个字符的原点确定为下划线起点,然后逐个字符更新下划线终点,直至遇到字号变化或者行尾或者终点光标位置,再将该段下划线加入下划线集合中;
S603、重新将下一字符的原点作为新的下划线起点,直至遇到字号变化或者行尾或者终点光标位置,再将该段下划线加入下划线集合中;
S604、根据下划线集合中的线段在用户界面上显示下划线效果,或者在文本下添加文本下划线标注。
本实施例中,本实施例中,从起点光标位置开始,按照文本段落数据结构所记录的顺序,对每一文本行执行构建下划线集合的步骤:
首先,从起点光标位置或文本行的行首开始,将获取的第一个字符的原点作为下划线的起点,然后逐个字符更新下划线终点(字符后方的原点位置为终点),直到遇到字符的字号发生变化或者文本行的行尾或者终点光标位置,然后将该段下划线添加到下划线集合中;其次,衔接上一结束的位置,重新将下一个字符的原点作为新的下划线起点,然后继续逐个字符更新下划线终点,并得到新的下划线,再添加到下划线集合中;最后,在获取下划线的过程中,遇见终点光标位置后整个获取过程结束,将最后获取的下划线加入下划线集合,结束下划线集合的构建;根据下划线集合中的下划线,在用户界面中显示下划线效果,或者在文本中添加下划线标注。
在一实施例中,如图7所示,步骤S104还包括:
S701、根据起点光标位置和终点光标位置,确定对应的文本范围;
S702、基于文本数据结构中记录的文本行的顺序,若文本行未全部落入文本范围内,则从文本行的行首或者起点光标位置开始,将第一个字符的原点确定为删除线起点,然后逐个字符更新删除线终点,直至遇到字号变化或者行尾或者终点光标位置,再将该段删除线加入删除线集合中;
S703、重新将下一字符的原点作为新的删除线起点,直至遇到字号变化或者行尾或者终点光标位置,再将该段删除线加入删除线集合中;
S704、根据删除线集合中的线段在用户界面上显示删除线效果,或者在文本下添加文本删除线标注。
本实施例中,从起点光标位置开始,按照文本段落数据结构所记录的顺序,对每一文本行执行构建删除线集合的步骤:
首先,从起点光标位置或文本行的行首开始,将获取的第一个字符的原点作为删除线的起点,然后逐个字符更新删除线终点(字符后方的原点位置为终点),直到遇到字符的字号发生变化或者文本行的行尾或者终点光标位置,然后将该段删除线添加到删除线集合中;其次,衔接上一结束的位置,重新将下一个字符的原点作为新的删除线起点,然后继续逐个字符更新删除线终点,并得到新的删除线,再添加到删除线集合中;最后,在获取删除线的过程中,遇见终点光标位置后整个获取过程结束,将最后获取的删除线加入删除线集合,结束删除线集合的构建;根据删除线集合中的删除线,在用户界面中显示删除线效果,或者在文本中添加删除线标注。
进一步的,在一具体实施例中,用户界面中显示删除线效果时,删除线沿着文本书写方向的垂直方向,向上移动25%字符高度。
在一实施例中,如图8所示,步骤S104还包括:
S801、根据起点光标位置和终点光标位置,确定对应的文本范围;
S802、基于文本数据结构中记录的文本段落的顺序,若文本段落未全部落入文本范围内,则从文本段落的段首或者起点光标位置开始,逐个获取每一文本字符并加入内容集合中,直至遇到段尾或者终点光标位置;
S803、若文本段落全部落入文本范围内,则直接将整个文本段落的字符加入内容集合中,直至遇到段尾或者终点光标位置;
S804、当上一文本段落的字符加入内容集合后,进入下一文本段落的字符添加时,将一个回车符追加到内容集合中;
S805、对内容集合中的纯文本内容继续提取得到文本数据。
本实施例中,从起点光标位置开始,按照文本段落数据结构所记录的文本段落顺序,对每一文本段落执行构建内容集合的步骤:
首先,若文本段落不是整段都在文本范围内,则从起点光标位置或文本段落的段首开始,逐个获取每一字符,并将字符加入内容集合中,直到遇到文本段落的段尾或者终点光标位置;其次,若文本段落是整段都在文本范围内,则直接将整个文本段落的字符加入内容集合中,将整个文本段落加入内容集合后,会进入下一文本段落的字符进行获取,此时需将一个回车符追加到内容集合中;最后,获取至终点光标位置所在的文本段落时,在终点光标位置停止获取,结束内容集合的构建过程;内容集合中的文本就是文本范围中对应的纯文本内容,可以进行提取并得到文本数据。
本发明实施例还提供一种选择装置,该选择装置用于执行前述选择方法的任一实施例。具体地,请参阅图9,图9是本发明实施例提供的选择装置的示意性框图。
如图9所示,选择装置900,包括:构建单元901、寻找单元902以及选择单元903。
构建单元901,用于构建文本的文本数据结构,并建立与文本数据结构对应的光标数据结构;
寻找单元902,用于接收用户给定的起点坐标和终点坐标,在文本数据结构中寻找起点坐标的位置和终点坐标的位置,并在光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;
选择单元903,用于根据起点光标位置和终点光标位置确定文本范围,并对文本范围内的文本内容进行选择。
该装置通过用户提供的起点坐标和终点坐标,计算文本数据结构中被选中的区域,具有文本内容选择准确高,便于后续进行标注的优点。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上的选择方法。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上的选择方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种选择方法,其特征在于,包括:
构建文本的文本数据结构,并建立与所述文本数据结构对应的光标数据结构;
接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;
根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择。
2.根据权利要求1所述的选择方法,其特征在于,所述构建文本的文本数据结构,包括:
确认文本中的文本对象,并依次逐级构建出文本单词、文本行、文本段落、文本块、文本流以及文本板面对象;
将构建的所述文本板面对象作为文本数据结构。
3.根据权利要求2所述的选择方法,其特征在于,所述接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置,包括:
在所有文本流中寻找出所述起点坐标所在的第一文本块,并构建第一文本块备选集合;以及在所有文本流中寻找出所述终点坐标所在的第二文本块,并构建第二文本块备选集合;
在所述第一文本块备选集合中寻找出所述起点坐标所在的第一文本段落,并构建第一文本段落备选集合;以及在所述第二文本块备选集合中寻找出所述终点坐标所在的第二文本段落,并构建第二文本段落备选集合;
在所述第一文本段落备选集合中寻找出所述起点坐标所在的第一文本行,并构建第一文本行落备选集合;以及在所述第二文本段落备选集合中寻找出所述终点坐标所在的第二文本行,并构建第二文本行备选集合;
在所述第一文本行备选集合中寻找出所述起点坐标落所在的第一文本单词,并构建第一文本单词备选集合;以及在所述第二文本行备选集合中寻找出所述终点坐标所在的第二文本单词,并构建第二文本单词备选集合;
在所述第一文本单词备选集合中寻找出所述起点坐标所在的第一虚拟字符,并构建第一虚拟字符备选集合;以及在所述第二文本单词备选集合中寻找出所述终点坐标所在的第二虚拟字符,并构建第二虚拟字符备选集合;
基于所述光标数据结构,在所述第一虚拟字符备选集合选出与所述起点坐标的距离最接近的第一光标位置,并构建第一光标备选集合;以及在所述第二虚拟字符备选集合中选出与所述终点坐标的距离最接近的第二光标位置,并构建第二光标备选集合;
从所述第一光标备选集合中选择直线距离最接近所述起点坐标的第一光标位置,作为起点光标位置;以及从所述第二光标备选集合中选择直线距离最接近所述终点坐标的第二光标位置,作为终点光标位置。
4.根据权利要求3所述的选择方法,其特征在于,所述接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置,还包括:
若未能在所述第一文本单词备选集合中寻找出所述起点坐标所在的第一虚拟字符;以及未能在所述第二文本单词备选集合中寻找出所述终点坐标所在的第二虚拟字符;
则在所有文本流中寻找出所述起点坐标距离最近的第一文本块,并构建第一文本块备选集合;以及在所有文本流中寻找出所述终点坐标距离最近的第二文本块,并构建第二文本块备选集合;
在所述第一文本块备选集合中寻找出所述起点坐标距离最近的第一文本段落,并构建第一文本段落备选集合;以及在所述第二文本块备选集合中寻找出所述终点坐标距离最近的第二文本段落,并构建第二文本段落备选集合;
在所述第一文本段落备选集合中寻找出所述起点坐标距离最近的第一文本行,并构建第一文本行备选集合;以及在所述第二文本段落备选集合中寻找出所述终点坐标距离最近的第二文本行,并构建第二文本行备选集合;
在所述第一文本行备选集合中寻找出所述起点坐标距离最近的第一文本单词,并构建第一文本单词备选集合;以及在所述第二文本行备选集合中寻找出所述终点坐标距离最近的第二文本单词,并构建第二文本单词备选集合;
在所述第一文本单词备选集合中寻找出所述起点坐标距离最近的第一虚拟字符,并构建第一虚拟字符备选集合;以及在所述第二文本单词备选集合中寻找出所述终点坐标距离最近的第二虚拟字符,并构建第二虚拟字符备选集合。
5.根据权利要求1所述的选择方法,其特征在于,所述根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择,包括:
根据所述起点光标位置和终点光标位置,确定对应的文本范围;
基于文本数据结构中记录的文本行的顺序,若文本行未全部落入所述文本范围内,则从文本行的行首或者所述起点光标位置开始,逐个获取每一字符的矩形区域,并将每一字符的矩形区域进行合并,直至遇到行尾或者终点光标位置,并将合并后的矩形区域加入高亮区域集合中;
若文本行全部落入所述文本范围内,则直接将整个文本行的矩形区域加入所述高亮区域集合中;
根据所述高亮区域集合中的矩形区域在用户界面上显示高亮效果,或者在文本下添加文本高亮标注。
6.根据权利要求1所述的选择方法,其特征在于,所述根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择,还包括:
根据所述起点光标位置和终点光标位置,确定对应的文本范围;
基于文本数据结构中记录的文本行的顺序,若文本行未全部落入所述文本范围内,则从文本行的行首或者所述起点光标位置开始,将第一个字符的原点确定为下划线起点,然后逐个字符更新下划线终点,直至遇到字号变化或者行尾或者终点光标位置,再将该段下划线加入下划线集合中;
重新将下一字符的原点作为新的下划线起点,直至遇到字号变化或者行尾或者终点光标位置,再将该段下划线加入所述下划线集合中;
根据所述下划线集合中的线段在用户界面上显示下划线效果,或者在文本下添加文本下划线标注。
7.根据权利要求1所述的选择方法,其特征在于,所述根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择,还包括:
根据所述起点光标位置和终点光标位置,确定对应的文本范围;
基于文本数据结构中记录的文本行的顺序,若文本行未全部落入所述文本范围内,则从文本行的行首或者所述起点光标位置开始,将第一个字符的原点确定为删除线起点,然后逐个字符更新删除线终点,直至遇到字号变化或者行尾或者终点光标位置,再将该段删除线加入删除线集合中;
重新将下一字符的原点作为新的删除线起点,直至遇到字号变化或者行尾或者终点光标位置,再将该段删除线加入所述删除线集合中;
根据所述删除线集合中的线段在用户界面上显示删除线效果,或者在文本下添加文本删除线标注。
8.一种选择装置,其特征在于,包括:
构建单元,用于构建文本的文本数据结构,并建立与所述文本数据结构对应的光标数据结构;
寻找单元,用于接收用户给定的起点坐标和终点坐标,在所述文本数据结构中寻找所述起点坐标的位置和终点坐标的位置,并在所述光标数据结构中分别匹配出对应的起点光标位置和终点光标位置;
选择单元,用于根据所述起点光标位置和终点光标位置确定文本范围,并对所述文本范围内的文本内容进行选择。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的选择方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至7任一项所述的选择方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011471610.1A CN112434495A (zh) | 2020-12-14 | 2020-12-14 | 一种选择方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011471610.1A CN112434495A (zh) | 2020-12-14 | 2020-12-14 | 一种选择方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112434495A true CN112434495A (zh) | 2021-03-02 |
Family
ID=74692631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011471610.1A Pending CN112434495A (zh) | 2020-12-14 | 2020-12-14 | 一种选择方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112434495A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101326516A (zh) * | 2005-12-12 | 2008-12-17 | 微软公司 | 选择和格式化扭曲文本 |
JP2010152500A (ja) * | 2008-12-24 | 2010-07-08 | Fujitsu Ltd | テキスト範囲選択処理プログラム、方法及び装置 |
US20100293460A1 (en) * | 2009-05-14 | 2010-11-18 | Budelli Joe G | Text selection method and system based on gestures |
CN102880417A (zh) * | 2011-09-12 | 2013-01-16 | 微软公司 | 显性触摸选择和光标放置 |
CN106201255A (zh) * | 2016-06-30 | 2016-12-07 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN107977346A (zh) * | 2017-11-23 | 2018-05-01 | 万兴科技股份有限公司 | 一种pdf文档编辑方法及终端设备 |
CN108205415A (zh) * | 2016-12-19 | 2018-06-26 | 汉王科技股份有限公司 | 文本选择方法和装置 |
CN108470021A (zh) * | 2018-03-26 | 2018-08-31 | 阿博茨德(北京)科技有限公司 | Pdf文档中表格的定位方法及装置 |
CN109657220A (zh) * | 2018-12-11 | 2019-04-19 | 万兴科技股份有限公司 | Pdf文档的在线编辑方法、装置及电子设备 |
-
2020
- 2020-12-14 CN CN202011471610.1A patent/CN112434495A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101326516A (zh) * | 2005-12-12 | 2008-12-17 | 微软公司 | 选择和格式化扭曲文本 |
JP2010152500A (ja) * | 2008-12-24 | 2010-07-08 | Fujitsu Ltd | テキスト範囲選択処理プログラム、方法及び装置 |
US20100293460A1 (en) * | 2009-05-14 | 2010-11-18 | Budelli Joe G | Text selection method and system based on gestures |
CN102880417A (zh) * | 2011-09-12 | 2013-01-16 | 微软公司 | 显性触摸选择和光标放置 |
CN106201255A (zh) * | 2016-06-30 | 2016-12-07 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN108205415A (zh) * | 2016-12-19 | 2018-06-26 | 汉王科技股份有限公司 | 文本选择方法和装置 |
CN107977346A (zh) * | 2017-11-23 | 2018-05-01 | 万兴科技股份有限公司 | 一种pdf文档编辑方法及终端设备 |
CN108470021A (zh) * | 2018-03-26 | 2018-08-31 | 阿博茨德(北京)科技有限公司 | Pdf文档中表格的定位方法及装置 |
CN109657220A (zh) * | 2018-12-11 | 2019-04-19 | 万兴科技股份有限公司 | Pdf文档的在线编辑方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102197501B1 (ko) | 고정 서식 문서에서의 동아시아 레이아웃 특징들의 검출 및 재구성 | |
US6952803B1 (en) | Method and system for transcribing and editing using a structured freeform editor | |
CN108710601B (zh) | 一种文本显示方法及其设备、存储介质、电子设备 | |
US20060294460A1 (en) | Generating a text layout boundary from a text block in an electronic document | |
JP5439456B2 (ja) | 電子コミック編集装置、方法及びプログラム | |
CN101308488A (zh) | 基于版式文件的文档流式信息处理方法及装置 | |
JP2006179003A (ja) | 意味論的文書スマートネール | |
US20140298164A1 (en) | Electronic book production apparatus, electronic book system, electronic book production method, and non-transitory computer-readable medium | |
JP5247311B2 (ja) | 電子文書処理装置および電子文書処理方法 | |
CN110688825A (zh) | 一种版式文档中的含线表格信息提取方法 | |
US20140325350A1 (en) | Target area estimation apparatus, method and program | |
US11663398B2 (en) | Mapping annotations to ranges of text across documents | |
CN112417826B (zh) | Pdf在线编辑方法、装置、电子设备和可读存储介质 | |
CN112434495A (zh) | 一种选择方法、装置、计算机设备及存储介质 | |
CN112312189B (zh) | 一种视频生成方法及视频生成*** | |
CN116110051A (zh) | 一种文件信息处理方法、装置、计算机设备及存储介质 | |
KR20120134054A (ko) | 사용자 주석 처리 장치 및 그를 위한 전자책 서비스 시스템 및 방법 | |
CN105653549A (zh) | 一种提取文档信息的方法及装置 | |
CN114970445A (zh) | 用于文档标注的方法及装置、存储介质 | |
CN111046096B (zh) | 用于生成图文结构化信息的方法和装置 | |
US20150095314A1 (en) | Document search apparatus and method | |
EP3287952A1 (en) | Input control program, input control device, input control method, character correction program, character correction device, and character correction method | |
CN113918509A (zh) | 一种文档对比显示方法及文档对比显示设备 | |
US7518749B2 (en) | Analysis alternates in context trees | |
CN104463086B (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 |