[发明专利]HTML文档处理方法、页面显示方法和设备有效
申请号: | 201910069208.1 | 申请日: | 2019-01-24 |
公开(公告)号: | CN111475679B | 公开(公告)日: | 2023-06-23 |
发明(设计)人: | 许阳寅 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F16/81 | 分类号: | G06F16/81 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 于小宁;黄玫 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | html 文档 处理 方法 页面 显示 设备 | ||
1.一种HTML文档处理方法,包括:
通过分离HTML文档中包含的标签,获得仅包含文本的文本流;
通过解析所述HTML文档中的标签和文本,构造索引树,其包括一个或多个节点,并且每一个节点包括指示所述文本中与该节点对应的文本段的数据以及指示该文本段的样式的数据;
获得样式集,其为与所述索引树中的每个节点对应的文本段的样式的集合;以及
将所述文本流、所述索引树和所述样式集相关联地存储。
2.根据权利要求1所述的方法,其中将所述文本流存储在内存之外的非易失性存储单元中。
3.根据权利要求2所述的方法,其中将所述文本流、所述索引树和所述样式集相关联地存储的步骤进一步包括:
以所述索引树中的每个节点所包括的数据为单元,对各节点所包括的数据进行排序以形成一索引数组;以及
将所述索引数组存储在内存之外的非易失性存储单元中。
4.根据权利要求3所述的方法,其中所述对各节点所包括的数据进行排序以形成一索引数组的步骤进一步包括:
按照各节点所包括的数据所指示的区间的左端点从小到大的次序排序,得到第一数组;
对于所述第一数组中区间的左端点相同的两个单元,进一步按照区间的右端点从大到小的次序排序,得到所述索引数组。
5.根据权利要求3所述的方法,其中将所述索引数组存储在内存之外的非易失性存储单元中的步骤进一步包括:
对所述索引数组执行压缩;以及
将压缩后的索引数组存储在内存之外的非易失性存储单元中。
6.根据权利要求2所述的方法,其中将所述文本流、所述索引树和所述样式集相关联地存储的步骤进一步包括:
将所述样式集序列化为所述非易失性存储单元能够存储的特定格式的样式数组;以及
将所述样式数组存储在所述非易失性存储单元中。
7.一种页面显示方法,包括:
响应于用以显示页面的指令,基于与所述页面对应的索引树、样式集和文本流执行页面的排版处理,其中所述索引树、所述样式集和所述文本流通过处理与所述页面对应的HTML文档而预先得到,所述文本流通过分离HTML文档中包含的标签而获得且仅包含文本,所述索引树包括一个或多个节点,并且每一个节点包括指示所述文本中与该节点对应的文本段的数据以及指示该文本段的样式的数据,所述样式集为与所述索引树中的每个节点对应的文本段的样式的集合;以及
显示排版处理后的页面。
8.根据权利要求7所述的方法,其中至少所述文本流存储在内存之外的非易失性存储单元中,并且所述基于与所述页面对应的索引树、样式集和文本流执行页面的排版处理的步骤进一步包括:
在所述非易失性存储单元中检索与该HTML文档对应的文本流,并且仅将部分文本流加载至内存中;以及
基于所述索引树、所述样式集和所述部分文本流执行页面的排版处理。
9.根据权利要求7所述的方法,其中所述索引树被变换为索引数组且存储在内存之外的非易失性存储单元中,所述样式集被序列化为样式数组且存储在内存之外的非易失性存储单元中,并且其中所述方法进一步包括:
将与所述页面对应的索引数组加载至内存中,并基于所述索引数组恢复与所述索引数组对应的索引树;以及
将与所述页面对应的样式数组加载到内存中,并反序列化为所述样式集。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910069208.1/1.html,转载请声明来源钻瓜专利网。