CN116756456A - 网页端划词方法及装置、存储介质、终端 - Google Patents
网页端划词方法及装置、存储介质、终端 Download PDFInfo
- Publication number
- CN116756456A CN116756456A CN202310614754.5A CN202310614754A CN116756456A CN 116756456 A CN116756456 A CN 116756456A CN 202310614754 A CN202310614754 A CN 202310614754A CN 116756456 A CN116756456 A CN 116756456A
- Authority
- CN
- China
- Prior art keywords
- word segmentation
- target
- text
- canvas
- information
- 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
- 230000011218 segmentation Effects 0.000 title claims abstract description 256
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000006399 behavior Effects 0.000 claims abstract description 12
- 238000004891 communication Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 12
- 230000002045 lasting effect Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 2
- 238000011161 development Methods 0.000 abstract description 3
- 230000018109 developmental process Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 241000287127 Passeridae Species 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000008719 thickening Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- 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
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明公开了一种网页端划词方法及装置、存储介质、终端,涉及前端开发技术领域,主要目的在于解决网页端划词对网页结构适用性较低的问题。主要包括响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。主要用于网页端页面中的文本划词。
Description
技术领域
本发明涉及前端开发技术领域,特别是涉及一种网页端划词方法及装置、存储介质、终端。
背景技术
随着网络信息的不断发展,文本编辑已经不局限于离线文本,越来越多的应用场景需要在在线网页中进行文本编辑,如,在网页中进行网页端划词。在网页中的网页端划词通常发生在对一些知识库类的网页进行文档协作时,用户需要在网页中对文档部分内容进行选择、标记、并对标记内容进行评论。
现有网页端的划词方法,主要通过向文本DOM中直接插入元素来实现部分文本内容的高亮和点击监听,但插入元素的方式会破坏页面原有的文档对象模型(DocumentObject Model,简称DOM)结构。由于网页配置有对应的文本编辑器,如富文本编辑器,在完成划词之后需要基于文本编辑器对文本进行解析,且文本编辑器是依据与页面的DOM结构相对应的解析规则进行解析的,若DOM结构改变则会影响后续文本编辑器的解析及下游任务的进行,因此,划词方法仅能适用于配置有无限制的文本编辑器的网页,对网页的适用性较低。
发明内容
有鉴于此,本发明提供一种网页端划词方法及装置、存储介质、终端,主要目的在于解决现有网页端划词的方法仅适用于部分网页结构,对不同网页结构的适用性较低的问题。
依据本发明一个方面,提供了一种网页端划词方法,包括:
响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
进一步地,所述响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象包括:
响应于对当前页面中文本进行划词的划词请求,获取初始划词区域;
以所述初始划词区域的头节点为遍历起点、以所述初始划词区域的尾节点为遍历终点进行深度优先遍历,得到划词长度等于或小于所述初始划词区域的至少一个目标划词区域;
获取与所述目标划词区域对应的范围对象。
进一步地,所述预置画布的配置过程包括:
创建所述文本容器的子节点,并将所述子节点配置为画布;
为所述画布配置定位参数、画布标记参数,所述定位参数的定位类别为绝对定位;
将所述画布的层叠样式属性配置为不响应于点击事件,得到配置完成的预置画布。
进一步地,所述画布参数配置信息包括定位参数配置信息、画布标记参数配置信息,所述定位参数配置信息中的定位类别为绝对定位,定位偏移量为零,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记包括:
基于所述目标位置信息确定所述预置画布的目标绘制区域;
利用所述预置画布,按照所述画布标记参数对所述目标绘制区域进行绘制。
进一步地,所述文本节点信息包括起始文本节点信息、终止文本节点信息,所述偏移量信息包括起始节点偏移量信息、终止节点偏移量信息,所述基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息包括:
基于所述起始文本节点信息、所述起始节点偏移量信息计算得到所述目标划词区域的头节点;
基于所述终止文本节点信息、所述终止节点偏移量信息计算得到所述目标划词区域的尾节点;
获取所述头节点的头节点位置信息,所述尾节点的尾节点位置信息,并基于所述文本容器的相对位置信息分别对所述头节点位置信息、所述尾节点位置信息进行修正,得到目标位置信息。
进一步地,所述目标位置信息包括修正后的头节点位置信息、修正后的尾节点位置信息,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记之后,所述方法还包括:
将所述修正后的头节点位置信息、所述修正后的尾节点位置信息存储为目标划词区域路径数组;
将所述目标划词区域路径数组发送至第一目标存储空间,以使得所述目标划词区域的标记持久化展示。
进一步地,所述目标划词区域对应有附加评论内容,所述方法还包括:
获取对所述目标划词区域进行评论的附加评论内容,并将所述附加评论内容发送至第二目标存储空间;
将所述第二目标存储空间的地址属性与所述目标划词区域路径数组进行关联处理,并将关联处理结果发送至所述第一目标存储空间,以使得所述目标划词区域的标记及附加评论持久化展示。
依据本发明另一个方面,提供了一种网页端划词装置,包括:
获取模块,用于响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
确定模块,用于基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
标记模块,用于利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
进一步地,所述获取模块包括:
第一获取单元,用于响应于对当前页面中文本进行划词的划词请求,获取初始划词区域;
遍历单元,用于以所述初始划词区域的头节点为遍历起点、以所述初始划词区域的尾节点为遍历终点进行深度优先遍历,得到划词长度等于或小于所述初始划词区域的至少一个目标划词区域;
第二获取单元,用于获取与所述目标划词区域对应的范围对象。
进一步地,在具体应用场景中所述标记模块中的所述预置画布的配置过程包括:
创建所述文本容器的子节点,并将所述子节点配置为画布;
为所述画布配置定位参数、画布标记参数,所述定位参数的定位类别为绝对定位;
将所述画布的层叠样式属性配置为不响应于点击事件,得到配置完成的预置画布。
进一步地,所述标记模块包括:
确定单元,用于基于所述目标位置信息确定所述预置画布的目标绘制区域;
绘制单元,用于利用所述预置画布,按照所述画布标记参数对所述目标绘制区域进行绘制。
进一步地,所述确定模块包括:
第一计算单元,用于基于所述起始文本节点信息、所述起始节点偏移量信息计算得到所述目标划词区域的头节点;
第二计算单元,用于基于所述终止文本节点信息、所述终止节点偏移量信息计算得到所述目标划词区域的尾节点;
修正单元,用于获取所述头节点的头节点位置信息,所述尾节点的尾节点位置信息,并基于所述文本容器的相对位置信息分别对所述头节点位置信息、所述尾节点位置信息进行修正,得到目标位置信息。
进一步地,所述装置还包括:
存储模块,用于将所述修正后的头节点位置信息、所述修正后的尾节点位置信息存储为目标划词区域路径数组;
发送模块,用于将所述目标划词区域路径数组发送至第一目标存储空间,以使得所述目标划词区域的标记持久化展示。
进一步地,所述装置还包括:
所述获取模块,还用于获取对所述目标划词区域进行评论的附加评论内容,并将所述附加评论内容发送至第二目标存储空间;
关联模块,用于将所述第二目标存储空间的地址属性与所述目标划词区域路径数组进行关联处理,并将关联处理结果发送至所述第一目标存储空间,以使得所述目标划词区域的标记及附加评论持久化展示。
根据本发明的又一方面,提供了一种存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述网页端划词方法对应的操作。
根据本发明的再一方面,提供了一种终端,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述网页端划词方法对应的操作。
借由上述技术方案,本发明实施例提供的技术方案至少具有下列优点:
本发明提供了一种网页端划词方法及装置、存储介质、终端,本发明实施例通过响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为,基于画布对划词区域进行标记,无需对网页页面DOM结构进行修改,也无需文本解析器的介入,避免由于DOM结构的改变,造成文本解析器与DOM结构的不兼容、不识别。同时,确保划词位置的准确性,从而有效提高划词对不同网页结构的适用性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种网页端划词方法流程图;
图2示出了本发明实施例提供的另一种网页端划词方法流程图;
图3示出了本发明实施例提供的一种网页端划词装置组成框图;
图4示出了本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
针对现有网页端的划词方法,主要通过向文本DOM中直接插入元素来实现部分文本内容的高亮和点击监听,但插入元素的方式会破坏页面原有的文档对象模型(DocumentObject Model,简称DOM)结构。由于网页配置有对应的文本编辑器,如富文本编辑器,在完成划词之后需要基于文本编辑器对文本进行解析,且文本编辑器是依据与页面的DOM结构相对应的解析规则进行解析的,若DOM结构改变则会影响后续文本编辑器的解析及下游任务的进行,因此,划词方法仅能适用于配置有无限制的文本编辑器的网页,对网页的适用性较低的问题。本发明实施例提供了一种网页端划词方法,如图1所示,该方法包括:
101、响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象。
本发明实施例中,当前页面为用户正在浏览的网站页面,其中,网站可以为知识库网站,如,某雀等,也可以为企业协同平台,如某书等,或其他需要文档协同的网站,本发明实施例不做具体限定。当用户需要对当前浏览的网页页面中的文本内容以特殊的颜色或样式进行划词标记的时候,用户选择文本标记工具,如高亮显示、标记、划词等,并对需要进行划词标记的文本进行选择,例如,通过操作鼠标或通过触屏光标选中需要标记的文本内容。此时,用户终端会向对应当前执行主体发送对正在操作页面,即当前页面进行划词的请求。服务器接收到划词请求后,根据当前选中的文本内容、及在先已经完成划词的文本内容,将当前选中的文本内容划分成一个或多于一个需要划词的区域,即目标划词区域。而划词区域中文本的位置信息需要利用该区域所对应的范围对象进行获取,因此,针对每个目标划词区域分别获取对应的范围对象,即Range对象。
需要说明的是,在划词过程中常常会出现划词重叠的状况,即当前划词区域与在先已经完成的划词区域存在包含、交叠等情况。在此种情况下,为了避免标记颜色或样式的重叠,将已完成划词的在先划词区域与当前正在操作的划词区域共同作为目标划词区域,不需要考虑划词区域重叠过程中所可能出现的多种复杂情况,也避免对文本节点的进一步切分,大大简化了划词区域重叠状况下的计算复杂度,从而有效降低重叠划词的处理难度。
102、基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息。
本发明实施例中,文档中的文本内容包括多个文本节点,基于范围对象可以获取到目标划词区域所在文本节点在网页中的起始文本节点、终止文本节点、及偏移量信息。其中,偏移量信息包括头节点偏移量、尾节点偏移量,头节点偏移量为目标划词区域的头节点(头节点)与所在文本节点的起始文本节点之间的偏移量;尾节点偏移量为目标划词区域的尾节点(尾节点)与所在文本节点的终止文本节点之间的偏移量。根据每个目标划词区域的起始文本节点与头节点偏移量的差值可以确定目标划词区域的头节点位置,根据终止文本节点与尾节点偏移量的差值可以确定目标划词区域的尾节点位置,从而根据每个目标划词区域所对应的头节点位置、尾节点位置。
需要说明的是,网页文档中的文本节点分布在一个或多个文本容器中,上述确定出的头节点位置、尾节点位置为目标划词区域相对于整体网页的位置,为了得到目标划词区域在文本容器中的位置以用于后续对目标划词区域进行标记,还需要根据所在文本容器相对于网页的相对位置,即文本容器的相对位置信息计算出目标划词区域在对应文本容器中的位置信息,从而得到目标位置信息。
103、利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记。
本发明实施例中,预置画布不响应页面操作行为。画布参数配置信息包括定位参数配置信息、画布标记参数配置信息。其中,定位参数配置信息为创建预置画布时配置的,用于限定画布与文本之间相对位置关系的参数的信息,包括画布相对于文本容器的定位类别、定位类别下的定位偏移量。其中,定位类别为绝对定位,以保证画布能随文本容器的大小变化而变化;定位偏移量可以为零,也可以为绝对值大于零的值,即预置画布的覆盖区域可以与文本容器的覆盖区域相同,也可以大于文本容器的覆盖区域。例如,当预置画布的覆盖区域与文本容器的覆盖区域相同时,根据目标位置信息在预置画布中确定出的区域即为目标划词区域。当预置画布的覆盖区域大于文本容器的覆盖区域时,可以根据偏移量对划词区域在文本容器中的目标位置信息进行修正,以得到划词区域在预置画布中的位置信息,并基于此位置信息、标记参数对划词区域进行标记。其中,标记参数为预先配置在画布中的默认颜色参数或默认标记样式参数,也可以为用户基于网页中对划词样式进行选择的选项配置的,其中,默认颜色参数、默认标记样式参数可以根据具体应用场景自定义,例如,颜色参数为黄色高亮标记、红色高亮标记等,标记样式参数为加粗标记、划线标记等,本发明实施例对标记参数的配置方式、标记参数的内容不做具体限定。
需要说明的是,为了使划词过程中光标可以对文本进行选择,将预置画布的属性配置为不响应页面操作行为,即光标在页面中操作时仅对文本容器中的文本进行操作,对画布的存在是无感知的。基于预置画布对需要划词的区域进行标记,避免对被选中的文本包裹一层新的元素,并为此元素添加背景颜色、绑定监听事件,改变了页面的DOM结构,同时,避免了在划词区域重叠的情况下对页面中文本节点的拆分,实现划词与页面结构的完全解耦,从而使划词适用于任何网页结构、任何解析器结构对应的网页中,从而提高划词对网页的适用性。
在一个本发明实施例中,为了进一步说明及限定,如图2所示,步骤所述响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象包括:
201、响应于对当前页面中文本进行划词的划词请求,获取初始划词区域。
202、以所述初始划词区域的头节点为遍历起点、以所述初始划词区域的尾节点为遍历终点进行深度优先遍历,得到划词长度等于或小于所述初始划词区域的至少一个目标划词区域。
203、获取与所述目标划词区域对应的范围对象。
本发明实施例中,当用户在页面中完成对划词区域的选取操作时,当前执行主体将收到划词请求,为了确定划词区域,需要获取用户在页面中基于光标对文本进行选取的区域,即初始划词区域,进而基于函数“document.getSelection()”、“getRangeAt(0)”获取该初始划词区域所对应的初始范围对象,初始范围对象包括startContainer起始文本节点、startOffset起始节点偏移量、endContainer终止文本节点、endOffset终止节点偏移量,基于上述节点与偏移量确定出初始划词区域的头节点、尾节点,并基于“getBoundingClientRect”获取头节点、尾节点的位置信息。其中,光标可以为鼠标光标、触摸屏光标等,本发明实施例不做具体限定。由于当前初始划词区域中还可能包含在前已经完成划词的划词区域,因此,需要在初始划词区域中以头节点位置作为遍历的起点,以尾节点位置作为遍历的终点进行深度优先遍历,通过遍历过程,收集初始划词区域中所有划词区域的头节点、尾节点,确定出包括初始划词区域在内的至少一个目标划词区域,并根据目标划词区域获取对应的范围对象。其中,目标划词区域可以是在先完成划词的划词区域的一部分,例如,当前初始划词区域为字符A、B、C、D,在先完成划词的划词区域为字符C、D、E、F,则两个划词区域存在交集,则目标划词区域包括A、B、C、D,C、D。通过对初始划词区域进行遍历,能够识别出重叠划词的情况,并在不对文本进行进一步拆分的情况下,完成对重叠划词区域的分别划词,更为便捷、高效的解决了划词过程中区域重叠问题。
在一个本发明实施例中,为了进一步说明及限定,所述预置画布的配置过程包括:
创建所述文本容器的子节点,并将所述子节点配置为画布。
为所述画布配置定位参数、画布标记参数,所述定位参数的定位类别为绝对定位。
将所述画布的层叠样式属性配置为不响应于点击事件,得到配置完成的预置画布。
本发明实施例中,为了使画布与文本容器元素更好的重叠,将画布作为文本容器的直接子节点,并将文本容器的定位类别设定为相对定位,将画布的定位类别设定为绝对定位,保证画布能随文本容器的大小变化而变化,且时刻覆盖在文本容器上。在画布的创建过程中,将画布创建为对应文本容器的直接子节点,相当于把画布的层级提高了,盖住了文本容器中的其他文本节点,这样是没有办法让文本响应于鼠标点击事件,并进行划词的,因此,需要给画布添加一个层叠样式(CSS:Cascading Style Sheets)属性,pointerEvents:'none',即使画布不响应于页面中的点击事件,保证用户对文本的正常操作。
在一个本发明实施例中,为了进一步说明及限定,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记包括:
基于所述目标位置信息确定所述预置画布的目标绘制区域。
利用所述预置画布,按照所述画布标记参数对所述目标绘制区域进行绘制。
本发明实施例中,画布参数配置信息包括定位参数配置信息、画布标记参数配置信息,定位参数配置信息中的定位类别为绝对定位,定位偏移量为零。在定位类别为绝对定位的条件下,画布的top(顶部)、left(左侧)、right(右侧)、bottom(底部)与文本容器的偏移量都是固定的,此时,将top、left、right、bottom的偏移量均设为0,则可以保证画布与文本容器时刻都是相同大小的,既保证了在对文本容器中任一文本进行划词时,都能够基于画布进行标记,同时,可以将获得的目标位置信息直接作为预置画布中的标记位置信息,从而减少计算量和标记的偏差。其中,画布标记参数配置信息中的画布标记参数可以是画布配置过程中设定的默认标记样式或颜色,也可以为用户对默认标记样式或颜色进行个性化选择所配置的画布标记参数,本发明实施例不做具体限定。
在一个本发明实施例中,为了进一步说明及限定,所述基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息包括:
基于所述起始文本节点信息、所述起始节点偏移量信息计算得到所述目标划词区域的头节点。
基于所述终止文本节点信息、所述终止节点偏移量信息计算得到所述目标划词区域的尾节点。
获取所述头节点的头节点位置信息,所述尾节点的尾节点位置信息,并基于所述文本容器的相对位置信息分别对所述头节点位置信息、所述尾节点位置信息进行修正,得到目标位置信息。
本发明实施例中,文本节点信息包括起始文本节点信息、终止文本节点信息,偏移量信息包括起始节点偏移量信息、终止节点偏移量信息。将起始文本节点与起始节点偏移量做差,能够得到目标划词区域中头节点所对应字符,同理,将终止文本节点与终止节点偏移量做差,能够得到目标划词区域中尾节点所对应字符。头节点、尾节点的位置获取方法与步骤201~203中初始划词区域的头节点、尾节点位置获取方式相同,本发明实施例在此不再赘述。得到的头节点位置信息、尾节点位置信息是相对于整个页面的位置信息,而用于标记的预置画布是覆盖在文本容器之上的,因此,需要根据文本容器相对于整个页面的相对位置信息对始字符位置信息、尾节点位置信息进行修正,将始字符位置信息、尾节点位置信息分别与相对位置信息做差,计算出修正后的头节点位置信息、修正后的尾节点位置信息,将上述两个位置信息作为目标划词区域的目标位置信息。
在一个本发明实施例中,为了进一步说明及限定,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记之后,所述方法还包括:
将所述修正后的头节点位置信息、所述修正后的尾节点位置信息存储为目标划词区域路径数组。
将所述目标划词区域路径数组发送至第一目标存储空间,以使得所述目标划词区域的标记持久化展示。
本发明实施例中,文本节点信息包括起始文本节点信息、终止文本节点信息,目标位置信息包括修正后的头节点位置信息、修正后的尾节点位置信息。在完成当前用户对当前浏览页面中的文本进行划词区域标记之后,为了在其他用户浏览到此页面时,也能够将当前用户的划词内容展示出来,需要对划词内容存储至后端。由于目标位置信息所对应的初始位置数据是基于range对象确定的,而range对象的起始节点(startContainer)、终止节点(endContainer)是保存着DOM节点的引用,无法序列化存储至后端,因此,采用XPath(路径语言)的方式,将从文本容器到目标划词区域头节点、尾节点的路径信息,存储为一个路径数组,以使后续页面展示过程中,可以从文本容器通过“childNodes”属性遍历下去找到对应节点,从而在划词内容的存储角度实现与页面结构的解耦。
在一个本发明实施例中,为了进一步说明及限定,所述方法还包括:
获取对所述目标划词区域进行评论的附加评论内容,并将所述附加评论内容发送至第二目标存储空间;
将所述第二目标存储空间的地址属性与所述目标划词区域路径数组进行关联处理,并将关联处理结果发送至所述第一目标存储空间,以使得所述目标划词区域的标记及附加评论持久化展示。
本发明实施例中,上述划词方法可以用于划词评论场景,在划词评论场景中,目标划词区域还对应有附加评论内容。在当前用户划词评论之后,为了使其他用户在浏览当前文档时,能够接收到当前用户的划词内容及评论内容,需要将评论内容存储在后端存储空间,并将存储空间的属性信息,如ID信息与划词区域的路径数组进行关联处理,以使在其他用户发出当前文档的浏览请求时,将当前文档中的划词标记及划词区域对应的评论内容一同展示在页面中。
本发明提供了一种网页端划词方法,本发明实施例通过响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为,基于画布对划词区域进行标记,无需对网页页面DOM结构进行修改,也无需文本解析器的介入,避免由于DOM结构的改变,造成文本解析器与DOM结构的不兼容、不识别。同时,确保划词位置的准确性,从而有效提高划词对不同网页结构的适用性。进一步的,作为对上述图1所示方法的实现,本发明实施例提供了一种网页端划词装置,如图3所示,该装置包括:
获取模块31,用于响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
确定模块32,用于基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
标记模块33,用于利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
进一步地,所述获取模块31包括:
第一获取单元,用于响应于对当前页面中文本进行划词的划词请求,获取初始划词区域;
遍历单元,用于以所述初始划词区域的头节点为遍历起点、以所述初始划词区域的尾节点为遍历终点进行深度优先遍历,得到划词长度等于或小于所述初始划词区域的至少一个目标划词区域;
第二获取单元,用于获取与所述目标划词区域对应的范围对象。
进一步地,在具体应用场景中所述标记模块33中的所述预置画布的配置过程包括:
创建所述文本容器的子节点,并将所述子节点配置为画布;
为所述画布配置定位参数、画布标记参数,所述定位参数的定位类别为绝对定位;
将所述画布的层叠样式属性配置为不响应于点击事件,得到配置完成的预置画布。
进一步地,所述标记模块33包括:
确定单元,用于基于所述目标位置信息确定所述预置画布的目标绘制区域;
绘制单元,用于利用所述预置画布,按照所述画布标记参数对所述目标绘制区域进行绘制。
进一步地,所述确定模块32包括:
第一计算单元,用于基于所述起始文本节点信息、所述起始节点偏移量信息计算得到所述目标划词区域的头节点;
第二计算单元,用于基于所述终止文本节点信息、所述终止节点偏移量信息计算得到所述目标划词区域的尾节点;
修正单元,用于获取所述头节点的头节点位置信息,所述尾节点的尾节点位置信息,并基于所述文本容器的相对位置信息分别对所述头节点位置信息、所述尾节点位置信息进行修正,得到目标位置信息。
进一步地,所述装置还包括:
存储模块,用于将所述修正后的头节点位置信息、所述修正后的尾节点位置信息存储为目标划词区域路径数组;
发送模块,用于将所述目标划词区域路径数组发送至第一目标存储空间,以使得所述目标划词区域的标记持久化展示。
进一步地,所述装置还包括:
所述获取模块31,还用于获取对所述目标划词区域进行评论的附加评论内容,并将所述附加评论内容发送至第二目标存储空间;
关联模块,用于将所述第二目标存储空间的地址属性与所述目标划词区域路径数组进行关联处理,并将关联处理结果发送至所述第一目标存储空间,以使得所述目标划词区域的标记及附加评论持久化展示。
本发明提供了一种网页端划词装置,本发明实施例通过响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为,基于画布对划词区域进行标记,无需对网页页面DOM结构进行修改,也无需文本解析器的介入,避免由于DOM结构的改变,造成文本解析器与DOM结构的不兼容、不识别。同时,确保划词位置的准确性,从而有效提高划词对不同网页结构的适用性。
根据本发明一个实施例提供了一种存储介质,所述存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的网页端划词方法。
图4示出了根据本发明一个实施例提供的一种终端的结构示意图,本发明具体实施例并不对终端的具体实现做限定。
如图4所示,该终端可以包括:处理器(processor)402、通信接口(CommunicationsInterface)404、存储器(memory)406、以及通信总线408。
其中:处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器402,用于执行程序410,具体可以执行上述网页端划词方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。终端包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:
响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (10)
1.一种网页端划词方法,其特征在于,包括:
响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
2.根据权利要求1所述的方法,其特征在于,所述响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象包括:
响应于对当前页面中文本进行划词的划词请求,获取初始划词区域;
以所述初始划词区域的头节点为遍历起点、以所述初始划词区域的尾节点为遍历终点进行深度优先遍历,得到划词长度等于或小于所述初始划词区域的至少一个目标划词区域;
获取与所述目标划词区域对应的范围对象。
3.根据权利要求1所述的方法,其特征在于,所述预置画布的配置过程包括:
创建所述文本容器的子节点,并将所述子节点配置为画布;
为所述画布配置定位参数、画布标记参数,所述定位参数的定位类别为绝对定位;
将所述画布的层叠样式属性配置为不响应于点击事件,得到配置完成的预置画布。
4.根据权利要求1所述的方法,其特征在于,所述画布参数配置信息包括定位参数配置信息、画布标记参数配置信息,所述定位参数配置信息中的定位类别为绝对定位,定位偏移量为零,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记包括:
基于所述目标位置信息确定所述预置画布的目标绘制区域;
利用所述预置画布,按照所述画布标记参数对所述目标绘制区域进行绘制。
5.根据权利要求1所述的方法,其特征在于,所述文本节点信息包括起始文本节点信息、终止文本节点信息,所述偏移量信息包括起始节点偏移量信息、终止节点偏移量信息,所述基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息包括:
基于所述起始文本节点信息、所述起始节点偏移量信息计算得到所述目标划词区域的头节点;
基于所述终止文本节点信息、所述终止节点偏移量信息计算得到所述目标划词区域的尾节点;
获取所述头节点的头节点位置信息,所述尾节点的尾节点位置信息,并基于所述文本容器的相对位置信息分别对所述头节点位置信息、所述尾节点位置信息进行修正,得到目标位置信息。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述目标位置信息包括修正后的头节点位置信息、修正后的尾节点位置信息,所述利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记之后,所述方法还包括:
将所述修正后的头节点位置信息、所述修正后的尾节点位置信息存储为目标划词区域路径数组;
将所述目标划词区域路径数组发送至第一目标存储空间,以使得所述目标划词区域的标记持久化展示。
7.根据权利要求6所述的方法,其特征在于,所述目标划词区域对应有附加评论内容,所述方法还包括:
获取对所述目标划词区域进行评论的附加评论内容,并将所述附加评论内容发送至第二目标存储空间;
将所述第二目标存储空间的地址属性与所述目标划词区域路径数组进行关联处理,并将关联处理结果发送至所述第一目标存储空间,以使得所述目标划词区域的标记及附加评论持久化展示。
8.一种网页端划词装置,其特征在于,包括:
获取模块,用于响应于对当前页面中文本进行划词的划词请求,获取至少一个目标划词区域的范围对象;
确定模块,用于基于所述范围对象的文本节点信息、偏移量信息、所述目标划词区域所在文本容器的相对位置信息确定目标位置信息;
标记模块,用于利用与所述文本容器对应的预置画布,根据所述目标位置信息、所述预置画布的画布参数配置信息对所述目标划词区域进行标记,所述预置画布不响应页面操作行为。
9.一种存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的网页端划词方法对应的操作。
10.一种终端,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的网页端划词方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310614754.5A CN116756456A (zh) | 2023-05-26 | 2023-05-26 | 网页端划词方法及装置、存储介质、终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310614754.5A CN116756456A (zh) | 2023-05-26 | 2023-05-26 | 网页端划词方法及装置、存储介质、终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116756456A true CN116756456A (zh) | 2023-09-15 |
Family
ID=87959928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310614754.5A Pending CN116756456A (zh) | 2023-05-26 | 2023-05-26 | 网页端划词方法及装置、存储介质、终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116756456A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117993347A (zh) * | 2024-04-07 | 2024-05-07 | 上海合见工业软件集团有限公司 | 印刷电路板画布的目标定位方法、装置、电子设备和介质 |
-
2023
- 2023-05-26 CN CN202310614754.5A patent/CN116756456A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117993347A (zh) * | 2024-04-07 | 2024-05-07 | 上海合见工业软件集团有限公司 | 印刷电路板画布的目标定位方法、装置、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4344693B2 (ja) | ブラウザの文書編集のためのシステムおよびその方法 | |
US8959427B1 (en) | System and method for JavaScript based HTML website layouts | |
CN109408764B (zh) | 页面区域划分方法、装置、计算设备和介质 | |
CN102929599B (zh) | 移动终端浏览器界面的修改方法及装置、移动终端 | |
US8387055B1 (en) | System and method for providing information and associating information | |
CN110688600A (zh) | 基于html页面的在线编辑方法、装置、设备及存储介质 | |
US20080072164A1 (en) | Methods and the Program-Recording Medium for Creating, Editing and Trading Home Page Components to Assemble a Home Page and a Personal Portal Site Directly in Wysiwyg on Web Browser | |
Feldt | Programming Firefox: Building rich internet applications with XUL | |
US20130117656A1 (en) | Conversion of web template designs | |
CN103984686A (zh) | 页面切换方法及装置 | |
CN108710490B (zh) | 一种Web页面的编辑方法和装置 | |
CN105824787A (zh) | 一种html模板动态配置的控制方法及系统 | |
CN108399072A (zh) | 应用页面更新方法和装置 | |
CA2244630A1 (en) | Searching of documents with multiple element types | |
US11573690B2 (en) | Generating and modifying content using data structures | |
CN113032708A (zh) | 一种无代码Web开发系统 | |
CN116756456A (zh) | 网页端划词方法及装置、存储介质、终端 | |
CN113158619A (zh) | 文档处理方法、装置、计算机可读存储介质及计算机设备 | |
CN111061478B (zh) | 一种页面表单修改方法、装置、设备及可读存储介质 | |
US7685229B1 (en) | System and method for displaying server side code results in an application program | |
US20030229850A1 (en) | Web browser | |
CN116245052A (zh) | 一种图纸迁移方法、装置、设备和存储介质 | |
US20020010720A1 (en) | Hyper-text document formatting collating and printing | |
CN117032666A (zh) | 基于编辑器的页面编辑方法、装置、终端设备及存储介质 | |
CN115543288A (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 |