用于在线显示文档的方法和装置的制造方法_4

文档序号:8905108阅读:来源:国知局
按照上述方法获得的"Hello"、"wordl"、"word2"、W及 "world"的样式来和文本内容来构造与该些数据对象相关联的文档对象模型。具体地,由于 在上文中已经按照数据对象的样式将数据对象划分为多个分组,因而可W针对每个分组中 的各个数据对象,来进行相应处理。具体地,针对第一分组中的数据对象"Hello"、"wordl"、 "word2",可W采用如下方法来构造文档对象模型。
[0084]
[0085] 应当注意,上文仅仅示意性地示出了如何构造文档对象模型的一个具体实施方 式,上述示例仅仅是示意性而并非限制性的,本领域技术人员还可W采用其他方式来实现。 另外,尽管上文仅仅示出了针对第一分组中的数据对象来构造相应的文档对象模型的方 法,本领域技术人员还可W基于示出的原理,来针对第二分组中的数据对象进行处理。
[0086]另外,将多个数据对象按照样式来划分分组目的在于提高数据处理效率,然而,该 步骤并非必选步骤,而是用于提高效率的可选步骤。本领域技术人员还可w在不划分分组 的情况下,直接处理从文档中提取的多个数据对象。
[0087] 由于在浏览器中显示数据对象的像素数量是与文档对象模型相关联的,在已经获 得文档对象模型的情况下,可W利用浏览器呈现该文档对象模型W便获取相应数据对象的 大小。具体地,在本发明的一个实施方式中,利用浏览器呈现文档对象模型,W获取多个数 据对象中的相应数据对象的大小进一步包括:利用浏览器的应用编程接口来获取多个数据 对象中的相应数据对象的大小。
[0088] 可W利用浏览器的应用编程接口来获取各个数据对象的大小。具体地,可W采用 如下方式来实现:
[0089]
[0090] 在上文中,已经针对每个数据对象创建了文档对象模型的相应节点,此时仅需要 调用浏览器的应用编程接口来获取每个节点的大小,即可获得在浏览器中显示的每个数据 节点所占用的像素数。在此具体示例中,使用existDOMNode.get化ild(i).size来获取每 个数据对象的大小。类似地,本领域技术人员还可W基于上述示例的原理,来针对其他分组 中的数据对象进行处理。
[0091] 在本发明的一个实施方式中,基于布局存储库来呈现多个数据对象,W在线显示 文档包括:基于布局存储库,按照用于在线显示文档的页面宽度来逐行地呈现多个数据对 象,W在线显示文档。
[0092] 由于可W获取在线显示的文档的页面宽度,并且在先前的预处理步骤中已经存储 了文档中的数据对象的大小,因而可W按顺序将文档中的各个数据对象依次放置在每一行 中,W便在线显示文档。当一行中的剩余空间不足W容纳文档中的下一数据对象(即,剩余 像素数小于下一数据对象的大小)时,则可W创建新的行,并将该下一数据对象放置到该 新的行的第一个位置。
[0093] 具体地,图6A-图6B分别示意性示出了根据本发明一个实施方式的在页面中放置 数据对象的示意图600A-600B。如图6A所示,示出将文档中的多个数据对象逐个放置到一 行中的相应位置的示意图。页面宽度W参考数字610A示出,如第i行620A所示,在第i行 中依次放置了数据对象1至数据对象N,并且在已经放置了数据对象N之后,在第i行中所 剩余的空间不足W容纳数据对象化1时,创建新的行(第i+1行630A)。接着,可W将数 据对象化1放置在第i+1行的起始位置。W此方式,可W按顺序依次处理文档中包括的每 个数据对象。
[0094] 应当注意,由于"空格"也属于文本数据,因而针对"空格"的处理可W遵循本发明 的方法,而无需进行特殊处理。另外,当遇到表示"回车"的数据对象时,可W创建新的段落 并且在新的一行中放置"回车"之后的数据对象。
[0095] 应当注意,由于在文档的布局中还涉及"对齐模式",因而在浏览器中显示文档时 还需要考虑"对齐模式"对于文档的显示效果的影响。常规的对齐模式可W包括;左对齐、 右对齐、居中W及两端对齐。
[0096] 在本发明的一个实施方式中,进一步包括:针对在线显示的文档中的一行内的至 少一个数据对象,计算页面宽度与至少一个数据对象的大小之间的差异;W及按照差异W 及文档的对齐模式,在该行内放置至少一个数据对象。在左对齐中,可W将页面宽度与多个 数据对象之间的差异(即,空白空间)放置在一行的右侧,W便实现左对齐模式(如图6A 所示)。在上文中已经参见图6A的示例描述了如何实现左对齐,本领域技术人员可W基于 所示的原理来自行实现右对齐和居中的对齐模式。
[0097] 在本发明的一个实施方式中,按照差异W及文档的对齐模式,在行内放置至少一 个数据对象包括:划分差异W在行内均匀地放置至少一个数据对象。图6B示意性示出了实 现两端对齐的框图。在此示例中,可W将差异均匀地分布在各个数据对象之间,W便实现两 端对齐。具体地,假设页面宽度为800,每个数据对象的大小为80,并且在一行中可W显示 9个数据对象(假设第10个数据对象的大小大于80),此时页面宽度与全部数据对象大小 之间的差异为800-80X90=80,即,将9个数据对象逐个放置到一行中时将剩余80像素的空 间。此时可W将该80像素平均地分配到9个数据对象之间的位置,从而W两端对齐的方式 在一行中显示9个数据对象。此时,在第1-80像素的位置显示第1个数据对象,在第81-90 像素的位置处显示空白,在第91-170像素的位置处显示第2个数据对象,W此类推。
[0098] 图7示意性示出了根据本发明一个实施方式的在线显示的文档的页面的示意图 700。按照如上文所述的方法,可W经由浏览器在在线文本编辑器中显示文档。如图7所示, 在710处示出了文档的一级标题,该标题W18号字体居中显示;在720处示出了文档的二 级标题,该标题W14号字体居中显示;在730处示出了文档的正文内容,W14号字体左对 齐显不。
[0099] 采用上文所述的本发明的各种实施方式,通过在呈现步骤之前执行预处理步骤, 可W快速、高效地获取文档中的各个数据对象的大小,并将相应的大小存储至布局存储库 中。继而在后续的呈现步骤中,可W快速获取文档中的每个数据对象的大小,并且实现高效 率的绘制。此外,通过基于数据对象的样式而将多个数据对象划分至多个分组,并且针对每 个分组中的数据对象进行处理,可W进一步提高数据处理效率。
[0100] 前面已经参考附图描述了实现本发明的方法的各个实施方式。本领域技术人员可 W理解的是,上述方法既可WW软件方式实现,也可WW硬件方式实现,或者通过软件与硬 件相结合的方式实现。并且,本领域技术人员可W理解,通过W软件、硬件或者软硬件相结 合的方式实现上述方法中的各个步骤,可W提供一种基于相同发明构思的一种设备。即使 该设备在硬件结构上与通用处理设备相同,由于其中所包含的软件的作用,使得该设备表 现出区别于通用处理设备的特性,从而形成本发明的各个实施方式的设备。本发明中所述 设备包括若干装置或模块,所述装置或模块被配置为执行相应步骤。本领域的所述技术人 员通过阅读本说明书可W理解如何编写程序实现所述装置或模块执行的动作。由于所述设 备与方法基于相同的发明构思,因此其中相同或相应的实现细节同样适用于与上述方法对 应的装置或模块,由于其在上文中已经进行了详细和完整的描述,因此在下文中可能不再 进行费述。
[0101] 图8示意性示出了根据本发明一个实施方式的用于在线显示文档的装置的框图 800。具体地,提供了一种用于在线显示文档的装置,包括:提取模块810,配置用于从文档 中提取多个数据对象;获取模块820,配置用于通过构造与多个数据对象相关联的文档对 象模型,获取多个数据对象中的相应数据对象的大小;生成模块830,配置用于基于大小生 成布局存储库;W及显示模块840,配置用于基于布局存储库来呈现多个数据对象,W在线 显示文档。
[0102] 在本发明的一个实施方式中,多个数据对象中的数据对象是基于与数据对象相关 联的文本内容和样式来唯一地标识的。
[0103] 在本发明的一个实施方式中,获取模块820包括;构造模块,配置用于基于与多个 数据对象相关联的文本内容和样式,构造文档对象模型;W及大小获取模块,配置用于利用 浏览器呈现文档对象模型,W获取多个数据对象中的相应数据对象的大小。
[0104] 在本发明的一个实施方式中,获取模块820包括;分组模块,配置用于基于与多个 数据对象中的数据对象相关联的样式,将多个数据对象划分为多个分组;第一构造模块,配 置用于针对每个分组,基于与该分组中的至少一个数据对象相关联的文本内容和样式,构 造与该分组中的至少一个数据对象相关联的文档对象模型,由此构造与多个数据对象相关 联的文档对象模型;W及第一大小获取模块,配置用于利用浏览器呈现文档对象模型,
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1