[发明专利]顺序布局构建器有效
申请号: | 201180015863.0 | 申请日: | 2011-03-24 |
公开(公告)号: | CN102804175A | 公开(公告)日: | 2012-11-28 |
发明(设计)人: | E.N.韦塞罗夫;R.P.阿塔纳索夫;M.J.乔尔森 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/21 | 分类号: | G06F17/21 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 李舒;汪扬 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 顺序 布局 构建 | ||
背景技术
使用Web浏览器再现结构化的Web内容,诸如HTML和CSS内容,典型地牵涉到处理包括标记的结构化文档以确定内容的布局(layout),使得其可以由Web浏览器呈现。这样的处理可以包括内容位置、大小和形状计算,以便从所述标记确定相关联的内容将如何被呈现在屏幕或显示器上。对于可用性和用户感知而言,期望的是布局和呈现算法按照可适用的标准快速并正确地工作。
在整个业界,布局处理普遍以递归方式执行。例如,这样的处理可以包括在HTML标记的根节点上发起处理操作,并以递归的方式贯穿该标记向下处理到叶节点。该处理典型地在HTML文档被呈现之前在整个HTML文档上进行。此外,现代的多核体系结构可以准许处理被并行地执行。然而,因为布局处理的递归性质,从并行处理所得到的优势不能被充分利用。
布局处理的递归性质也可能导致处理中的重复,这进而又可能使性能和用户体验降级。
发明内容
本概要被提供来以简化的形式介绍概念的选择,这些概念还将在下面的详细说明中进行描述。本概要既不打算确认所要求保护的主题的关键特征或必要特征,也不打算被使用来限制所要求保护的主题的范围。
按照一个或多个实施例,对结构化文档的布局处理以顺序的方式实施(conduct)。布局过程被分成可以顺序地执行的多个更小的步骤。在至少一些实施例中,布局构建器被结合栈使用以控制在文档的结构层次的各层次上的布局执行。不可变的数据结构被使用,并且其允许顺序布局操作的并行执行。在至少一些实施例中,可以完成布局序列的部分执行来产生可用的数据。
附图说明
在全部附图中,使用相同的标号来标注同样的特征。
图1图示了按照一个或多个实施例的、在其中可以利用这里描述的各种原理的操作环境。
图2图示了按照一个或多个实施例的示例性体系结构。
图3描述了按照一个或多个实施例的、在顺序布局构建过程中的布局空间分配协议。
图4是描述按照一个或多个实施例的方法中的步骤的流程图。
图5图示了按照一个或多个实施例的布局框的类层次。
图6图示了按照一个或多个实施例的框构建器的类层次。
图7图示了可以被使用来实施一个或多个实施例的示例性系统。
具体实施方式
综述
按照一个或多个实施例,布局处理以顺序的方式实施。布局过程被分成可以顺序地执行的多个更小的步骤。在至少一些实施例中,布局构建器被结合栈使用以控制在结构化文档的结构层次的各层次上的布局执行。不可变的数据结构被使用,并且允许顺序布局操作的并行执行。在至少一些实施例中,可以完成布局序列的部分执行来产生可用的数据。这里描述的技术可以结合任意类型的结构化文档一起被使用,作为例子而不是限制,结构化文档诸如是HTML文档。
在一个或多个实施例中,在布局构建器的影响下,顺序布局处理被组织为按一组顺序的步骤执行的非递归树径(tree walk),所述的一组顺序的步骤诸如像“进入块”、“退出块”、“构建行”等等。一个个步骤可以具有恒定的时间来执行,并且整个过程可以在一个个步骤后被停止,以便产生可用于再现和用户交互的部分布局。
在一个或多个实施例中,通过把在布局构建期间使用的临时数据与提供用于再现和交互的布局结果的持久性数据进行分离,而将布局构建数据结构组织成达到高效紧致性。临时数据由一组布局构建器代表,每种布局一个布局构建器。布局构建器是在布局处理期间临时存在的临时对象。另一方面,持久性数据被表示为存储在最终得到的显示树中的布局框,显示树可以被处理来呈现相关联的内容。这样做可以比过去更加高效地利用存储器资源。例如,在HTML处理的上下文中,在任一特定时间存在的布局构建器的数量由HTML文档的深度来限定,而不是由HTML文档的宽度来限定。因此,由布局构建器代表的临时数据不必驻留在最终得到的显示树中。
另外,被处理的数据和处理算法都以可伸缩的方式被组织。这允许任意的布局片段的执行。这种顺序可伸缩性导致了对于可以被使用于回溯针对滚动、分页、栏目化等等的尝试的算法的改进性能。
此外,在至少一些实施例中,布局结果由被设计为不可变的布局框所代表。这使得布局框能够在动态情景中被再次使用,动态情景诸如是渐增的部分更新、并行布局、渐进式再现以及回溯布局执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180015863.0/2.html,转载请声明来源钻瓜专利网。