提供用于在基于网络的应用中编辑的文档的打印视图的制作方法

文档序号:10579013阅读:130来源:国知局
提供用于在基于网络的应用中编辑的文档的打印视图的制作方法
【专利摘要】一般提供了在基于网络的应用中使能一致地查看和编辑文档的打印输出同时文档的打印输出在不同的浏览器以及桌面客户端应用上看起来相同的技术。由主管基于网络的应用的服务器所处理的文档的打印视图可以在服务器处生成,随着对文档进行编辑而更新,并且提供给请求浏览器或桌面客户端应用,使得打印视图在多个浏览器和客户端应用上一致。
【专利说明】提供用于在基于网络的应用中编辑的文档的打印视图
【背景技术】
[0001]确保在桌面客户端软件、多个浏览器中的网络应用以及纸张上的打印输出之间保 留文档中的页面布局是复杂的挑战。不同的浏览器可能具有不同的核心渲染逻辑,并且每 个浏览器可能根据其相应的渲染引擎来布置页面。由于浏览器渲染文档的方式之间的变 化,文档可以不同方式布置在不同的浏览器上。此外,文档可能在特定的浏览器与传统桌面 应用之间布局相同。然而,由于渲染引起的差别也可能显现在打印内容中。例如,具有文本 和被缠绕的图像的文档可能布局使得在浏览器A中图像在最后一行,在浏览器B中图像在下 一页的第一行,而在桌面客户端A中图像在倒数第二行然后文本行在下面。
[0002] 解决渲染或打印的内容的差异性的一种方法是创建布局引擎,布局引擎在浏览器 中运行,近似桌面客户端软件中的典型的复杂布局引擎。虽然该方法可允许多个浏览器一 致地显示文档,但是该近似可能频繁地导致内容在浏览器中与在桌面客户端中布局不同。 另外,因为不同的浏览器可具有不同级别的标准支持,所以从不同浏览器打印的文档仍然 可能布局不同。

【发明内容】

[0003] 提供该
【发明内容】
以便以简化形式来引入下文在【具体实施方式】中进一步描述的构 思的选择。该
【发明内容】
不意在排他地确定所要求保护的主题的关键特征或主要特征,也不 意在用来辅助确定所要求保护的主题的范围。
[0004] 实施例涉及到,使能在基于网络的应用中一致地查看和编辑文档的打印输出,同 时文档的打印输出在不同浏览器以及桌面客户端应用上看起来相同。根据一些示例性实施 例,服务器可用于产生打印输出且显示在网络应用中。渲染后的文档的视图可随着编辑进 行而在网络应用上自动更新。服务器还可以确保文档的打印输出在浏览器和桌面客户端上 是相同的。
[0005] 这些以及其它的特征和优点根据下面的【具体实施方式】的阅读以及相关联的附图 的浏览将是显而易见的。应当理解,前面的概述和下面的【具体实施方式】都是说明性的,而不 限制所要求保护的方面。
【附图说明】
[0006] 图1示出了示例环境,其中基于网络的应用可以将文档的一致打印视图提供给包 括浏览器在内的客户端应用;
[0007] 图2示出了显示待编辑文档的示例客户端应用用户界面以及与显示的文档相邻的 同一文档的打印视图;
[0008] 图3示出了在对所显示的文档和刷新的打印视图的编辑变化后图2的示例用户界 面;
[0009] 图4示出了显示文档的另一示例客户端应用用户界面,其中分页符表明所显示的 文档上的打印视图提示;
[0010] 图5是网络环境,其中可以实现根据实施例的系统;
[0011] 图6是示例计算操作环境的框图,其中可以实现实施例;以及
[0012] 图7示出了根据实施例的从基于网络的应用向客户端应用提供文档的打印视图的 过程的逻辑流程图。
【具体实施方式】
[0013] 如上文简要描述的,由主管基于网络的应用的服务器所处理的文档的打印视图可 在服务器处生成,随着对文档进行编辑而更新,并且提供给请求浏览器(requesting browser)或桌面客户端应用,以使得打印视图在多个浏览器和客户端应用上一致。
[0014] 在下面的【具体实施方式】中,参考了附图,附图构成说明的部分,并且通过示例说明 的方式示出了具体的实施例或示例。这些方面可以组合,可以使用其它方面,可以作出结构 改变,而不偏离本公开的精神或范围。因此,下面的【具体实施方式】不应从限制的意义上考 量,且本发明的范围由随附的权利要求及其等价物来限定。
[0015] 虽然与在个人计算机上的操作系统上运行的应用程序相结合地执行的程序模块 的一般背景下描述实施例,但是本领域技术人员将理解各方面可以与其它程序模块相结合 地实现。
[0016] -般地,程序模块包括例程、程序、组件、数据结构以及执行特定任务或实现特定 抽象数据类型的其它类型的结构。此外,本领域技术人员将意识到,实施例可以通过包括手 持式设备、微处理器系统、基于微处理器或可编程消费电子设备、微型计算机、主机计算机 和类似的计算设备在内的其它计算机系统配置来实践。实施例还可以在通过通信网络链接 的远程处理设备来执行任务的分布式计算环境中来实践。在分布式计算环境中,程序模块 可以位于本地存储器存储设备或远程存储器存储设备中。
[0017] 实施例可以实现为计算机实现的过程(方法)、计算系统,或者实现为制品,诸如计 算机程序产品或计算机可读介质。计算机程序产品可以是能够由计算机系统来读取并且对 包括用于使计算机或计算系统执行示例过程的指令的计算机程序进行编码的计算机存储 介质。计算机可读存储介质是计算机可读存储器设备。计算机可读存储介质可以例如经由 易失性计算机存储器、非易失性存储器、硬盘驱动器、闪速驱动器、软盘或压缩盘和类似介 质中的一种或多种来实现。
[0018] 在整个本说明书中,术语"平台"可以是通过诸如浏览器的客户端应用提供文档处 理服务的基于网络的服务的软件组件和硬件组件的组合。平台的示例包括但不限于在多个 服务器上执行的托管的服务、在单个计算设备上执行的应用以及类似的系统。术语"服务 器"一般是指通常在网络环境中执行一个或多个软件程序的计算设备。然而,服务器还可以 实现为在视作网络上的服务器的一个或多个计算设备上执行的虚拟服务器(软件程序)。下 面提供关于这些技术和示例操作的更多细节。
[0019] 图1示出了示例环境,其中基于网络的应用可以向包括浏览器在内的客户端应用 提供文档的一致的打印视图。
[0020] 如图100所示,诸如基于云的文字处理、电子表格或类似服务的托管服务可以从诸 如服务器102的一个或多个服务器提供给诸如台式计算机、膝上型计算机、手持式计算机、 智能手机和类似设备的客户端设备。平板设备110是客户端设备的一个示例。服务的用户 (或订阅者)可以通过各种应用如桌面客户端应用(例如,完整应用、移动应用)、浏览器等来 访问该服务。
[0021] 托管的服务可使用户能够查看、编辑、创建、共享和公开不同的文档,诸如文字处 理文档、网页、电子表格文档、演示文档、电子邮件和类似的文档,仅列举了几个。用户可以 通过他们的客户端应用的用户界面104来查看和编辑文档106。如上所述,渲染文档的显示 可以由于应用的渲染能力之间的差别而从一个客户端应用到另一客户端应用而不同。类似 地,文档的打印视图还可以在不同的浏览器和/或桌面客户端应用之间变化。在图100中,显 示出示例的文档的打印视图108紧挨着所呈现的文档106。
[0022] 根据实施例的基于网络的应用提供了中间步骤,该中间步骤能够以在不同端点 (桌面客户端应用、多个浏览器、打印机等)上通用的方式解释文档以确保文档在各端点上 一致地布局。
[0023]图2示出了显示待编辑文档以及邻近所显示文档的同一文档的打印视图的示例的 客户端应用用户界面。
[0024]图200显示出呈现文档以及对应的打印视图的一种配置,其中显示打印视图206 (在右侧)邻近所呈现的文档204。可使用户能够编辑显示的文档204,添加内容,去除内容, 改变现有内容诸如四处移动文本内容、图形内容和图像。
[0025]实施例不限于图2的用户界面202中所示的配置,并且可利用其他配置来实现实施 例,诸如打印视图206的显示位置和格式。图200还包括控件216和218。控件216可以激活或 去激活打印视图206(例如,如果打印视图206被去激活,则文档204可向右扩展)。控件218可 用于手动刷新打印视图。在一些实施例中,可以按规律间隔响应于文档204的变化更新(刷 新)打印视图206。然而,在其他实施例中,可使用户能够通过控件218来手动更新打印视图 206。控件216和218还可以任何形状或格式呈现在用户界面202上的任意位置。还可以呈现 管理文档和/或打印视图的其他特征的附加控件。
[0026]图200进一步包括在打印视图206上的分页符208。分页符108可以向用户表明页面 在哪里结束以及另一页面在哪里开始,从而用户能够将文本内容、图形内容和图像相对于 页面布局的放置可视化。
[0027]图3示出了对所显示的文档和刷新的打印视图的编辑变化之后图2的示例的用户 界面。
[0028]在用户界面302上查看文档304的用户可以编辑文档,例如,插入文本内容310。编 辑变化会影响文档的打印视图306,可通过主管应用的服务器以规律的间隔或者通过用户 动作来更新打印视图306,例如显示插入的文本内容312。
[0029] 为了不同的浏览器和桌面客户端应用上的打印视图的一致布局,服务器可以将插 入的内容适当地放置在页面内,例如,移动在插入的内容之前或之后的内容,使得插入的内 容放置在相对于页面布局的同一位置,而无论用户采用何种类型的应用来查看文档(或打 印)。
[0030] 虽然在图300中文本内容用作示例,为了一致的打印视图,还可以放置、移动和以 其他方式修改其他形式的内容。例如,可以修改尺寸、表格的放置或表格周围的内容以确保 在不同浏览器(和/或打印机)上表格相对于页面布局一致地放置。
[0031] 图4示出了另一示例的客户端应用用户界面,显示出具有分页符的文档,分页符指 示所显示的文档上的打印视图提示。
[0032] 图400显示可替代的实施例,其中打印视图可以在用户界面402的文档的编辑视图 404上通过分页符406而呈现给用户。分页符406可以允许用户确定内容相对于页面布局的 位置和放置,而无需打印视图的额外显示。分页符的位置以及其周围(之前和之后)的内容 可随着用户对文档进行编辑变化而更新。
[0033] 在其他实施例中,诸如图标、沿着页面边缘的图形指示符等其他指示符也可用于 将文档的打印视图可视化,而无需实际显示该打印视图。此外,可以以预定义间隔或者用户 在服务器处动作时更新打印视图,并且可将更新的打印视图提供给客户端应用(例如,浏览 器)。
[0034]图1-4所描绘的示例的应用、设备和模块仅为了示例的目的而提供。实施例不限于 示例图中所示的配置和内容,并且可以利用采用本文所描述的原理的其他算法、配置、客户 端应用、服务提供商和模块来实现。
[0035] 图5是示例的网络环境,其中可实现实施例。在基于网络的应用中一致地查看和编 辑文档的打印输出,同时文档的打印输出在不同的浏览器以及桌面客户端应用上看起来相 同,这可与经由在一个或多个服务器514或单个服务器516上执行的软件所实现的托管的应 用和服务相联合地部署。托管的应用和服务可通过网络510与诸如手持式计算机、膝上型计 算机511、平板式计算机(或平板)512、智能手机513的单个计算设备("客户端设备")上的客 户端应用进行通信并且控制呈现给用户的用户界面。
[0036] 客户端设备511-513可用于访问由托管的服务或应用提供的功能。服务器514或服 务器516中的一个或多个可用于提供如上所述的各种服务。相关数据可存储在一个或多个 数据存储(例如,数据存储519)中,其可通过服务器514中的任一个或通过数据库服务器518 来管理。
[0037] 网络510可以包括服务器、客户端、因特网服务提供商和通信介质的任意拓扑结 构。根据实施例的系统可具有静态或动态拓扑结构。网络410可包括诸如企业网的安全网 络、诸如无线开放网的非安全网络、或因特网。网络510还可以协调通过诸如PSTN或蜂窝网 络的其他网络的通信。网络510提供本文所描述的节点之间的通信。通过示例而不是限制的 方式,网络510可包括诸如声波、RF、红外和其他无线介质的无线介质。
[0038] 可以采用计算设备、应用、数据结构和数据分布系统的许多其他配置来使得在基 于网络的应用中能够一致地查看和编辑文档的打印输出,同时文档的打印输出在不同浏览 器以及桌面客户端应用上看起来相同。此外,图5所论述的网络环境仅为了示例的目的。实 施例不限于示例的应用、模块或过程。
[0039] 图6和相关的论述意在提供在其中可实现实施例的适当的计算环境的简要的、总 体的描述。参考图6,示出了用于根据实施例的应用的示例的计算操作环境的框图,诸如计 算设备600。在基本配置中,计算设备600可以是本文所论述的任意示例的设备,并且可包括 至少一个处理单元602和系统存储器604。计算设备600还可以包括在执行程序时协作的多 个处理单元。取决于计算设备的确切的配置和类型,系统存储器604可以是易失性的(诸如 RAM)、非易失性的(诸如R0M、闪速存储器等)或两者的某种组合。系统存储器604典型地包括 适合于控制平台的操作的操作系统605,诸如来自华盛顿的Redmond的微软公司的 WINDOWS?、WINDOWS:MDBILE?或WINDOWS PHONE?操作系统。系统存储器604还 可以包括一个或多个软件应用,诸如网络文档应用622和打印视图模块624。
[0040]打印视图模块624可与托管的服务或网络文档应用622相联合操作,并且提供在基 于网络的应用中一致地查看和编辑文档的打印输出、同时文档的打印输出在不同的浏览器 以及桌面客户端应用上看起来相同。在不同的浏览器和桌面客户端应用上提供一致的体验 能够通过实现效率提高和/或与界面交互所需的脑力或体力量减少来改善用户的总体体 验。打印视图模块624还可以响应于对底层文档的编辑变化而更新打印视图。该基本配置通 过那些在虚线608内的组件在图6中示出。
[0041]计算设备600可具有附加的特征或功能。例如,计算设备600还可以包括附加的数 据存储设备(可移除和/或非可移除),诸如例如磁盘、光盘或磁带。图6中通过可移除存储设 备609和非可移除存储设备610来示出这样的附加存储设备。计算机可读存储介质可包括以 用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术 实现的易失性和非易失性的、可移除的和非可移除的介质。系统存储器604、可移除存储设 备609和非可移除存储设备610都是计算机可读存储介质的示例。计算机可读存储介质包括 但不限于RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字多功能盘(DVD)或 其它光学存储、磁盒、磁带、磁盘存储或其它磁存储设备或者任何其它能够用来存储所需信 息且能够由计算设备600访问的介质。任何这样的计算机可读存储介质可以是计算设备600 的部分。计算设备600还可以具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、用于检 测姿势的光学捕获设备和类似的输入设备之类的输入设备612。还可以包括诸如显示器、扬 声器、打印机和其它类型的输出设备之类的输出设备614。这些设备是本领域公知的,无需 在此赘述。
[0042] 计算设备600还可以包含通信连接616,其允许设备与其它设备618通信,例如通过 分布式计算环境中的无线网络、卫星链路、蜂窝链路和类似的机制。其它设备618可包括执 行通信应用的计算机设备、其它指导或策略服务器和类似设备。通信连接616是通信介质的 一个示例。通信介质中可以包括调制数据信号中的计算机可读指令、数据结构、程序模块或 其它数据,诸如载波或其它传输机制,并且包括任何信息输送介质。术语"调制数据信号"是 指其特性中一个或多个以将信息编码在信号中的方式进行设定或改变的信号。通过示例而 不是限制的方式,通信介质包括诸如有线网络或直接有线连接的有线介质以及诸如声波、 RF、红外和其它无线介质之类的无线介质。
[0043] 示例性实施例还包括方法。这些方法能够以任意多种方式来实现,包括在该文档 中描述的结构。一种这样的方式是通过该文档中所描述的类型的设备的机器操作。
[0044] 另一种可选的方式是与执行一些操作的一个或多个人类操作者联合地执行方法 的各操作中的一个或多个。这些人类操作者无需彼此配合,但是每个人类操作者仅有一台 执行程序的一部分的机器。
[0045] 图7示出了根据实施例的用于从基于网络的应用向客户端应用提供文档的打印视 图的过程的逻辑流程图。过程700可以实现为监视系统或应用的部分。
[0046] 过程700可开始于操作710,其中可以在基于网络的应用中接收来自诸如浏览器或 桌面客户端应用的客户端应用的对文档的请求。在操作720和730中,服务器可以生成文档 的打印视图并且将打印视图连同文档一起提供给请求客户端应用,使得打印视图能够连同 文档的编辑视图一起显示在客户端应用的用户界面上。
[0047]在操作740中,服务器可以检测文档的编辑视图的变化,诸如文档内容的插入、移 除或修改。在操作750中,服务器可以响应于检测到变化而更新打印视图并且在操作760将 更新后的打印视图传送到客户端应用。通过在服务器处生成和更新打印视图并且提供给请 求客户端应用,可以实现文档的一致的显示和/或打印。
[0048]在过程700中包含的操作是为了示例说明的目的。根据实施例从基于网络的应用 向客户端应用提供文档的打印视图可通过具有更少或额外步骤的类似的过程来实现,而且 可以利用本文所描述的原理按不同的操作顺序来实现。
[0049]上面的说明书、示例和数据提供了对实施例的构成物的制造和使用的完整描述。 虽然以特定于结构特征和/或方法行为的语言描述了主题,但是应当理解在随附权利要求 中限定的主题不必局限于上述的特定特征或行为。相反,上述的特定的特征或行为被公开 为实现权利要求和实施例的示例形式。
【主权项】
1. 一种至少部分地在计算设备上执行以在基于网络的应用中提供文档的打印视图的 方法,所述方法包括: 在服务器处提供所述文档用于通过浏览器或客户端应用查看和编辑; 在所述服务器处生成所述文档的所述打印视图; 将所述打印视图提供给所述浏览器或所述客户端应用;以及 响应于通过所述浏览器或所述客户端应用在所述文档中的编辑变化而在所述服务器 处更新所述打印视图。2. 如权利要求1所述的方法,进一步包括: 使能在所述浏览器或所述客户端应用的用户界面上邻近呈现的文档来呈现所述打印 视图。3. 如权利要求1所述的方法,进一步包括: 除了呈现文档的用户界面以外,还使能在所述浏览器或所述客户端应用的不同的用户 界面上呈现所述打印视图。4. 如权利要求1所述的方法,进一步包括: 将所述打印视图提供给所述浏览器或所述客户端应用,使得所述打印视图在多个浏览 器用户界面上一致地显示。5. 如权利要求4所述的方法,其中,所述打印视图的一致显示包括文本内容、图形内容、 或图像中的一个或多个关于彼此的一致放置。6. 如权利要求4所述的方法,其中,所述打印视图的一致显示包括文本内容、图形内容、 或图像中的一个或多个的尺寸的一致显示。7. 如权利要求4所述的方法,其中,所述打印视图的一致显示包括文本内容、图形内容、 或图像中的一个或多个的一致分页。8. 如权利要求1所述的方法,进一步包括: 通过使得能够在显示所述文档的所述浏览器或所述客户端应用的用户界面上显示分 页符,将所述打印视图提供给所述浏览器或所述客户端应用。9. 如权利要求8所述的方法,其中,所述分页符的位置是在所述服务器处确定的以确保 所述打印视图在多个浏览器用户界面上的一致显示。10. -种在基于网络的应用中提供文档的打印视图的计算设备,所述计算设备包括: 存储器; 与所述存储器耦合的处理器,所述处理器执行所述基于网络的应用,其中,所述处理器 被配置为: 提供所述文档以用于通过浏览器或客户端应用查看和编辑; 生成所述文档的所述打印视图; 将所述打印视图提供给所述浏览器或所述客户端应用,使得所述打印视图在多个浏览 器用户界面上一致地显示;以及 响应于通过所述浏览器或所述客户端应用在所述文档中的编辑变化而更新所述打印 视图。11. 如权利要求10所述的计算设备,其中,所述处理器进一步被配置为: 使能在所述浏览器或所述客户端应用的用户界面上邻近呈现的文档来呈现所述打印 视图,或者除了呈现文档的用户界面以外在所述浏览器或所述客户端应用的不同的用户界 面上呈现所述打印视图。12. 如权利要求10所述的计算设备,其中,所述处理器进一步被配置为: 计算要显示在所呈现的文档上的分页符的位置,使得在多个浏览器用户界面上文本内 容、图形内容、或图像中的一个或多个关于彼此一致地显示;以及 将所述分页符位置提供给呈现所述文档的一个或多个浏览器。13. 如权利要求10所述的计算设备,其中,所述处理器进一步被配置为: 使能在呈现所述文档的用户界面上呈现一个或多个控件,所述控件与所述打印视图的 呈现、在所述打印视图或编辑视图之间的切换,以及所述打印视图的去激活中的一个或多 个相关联,其中,所述控件包括用于刷新所述打印视图的控件。14. 如权利要求10所述的计算设备,其中,所述处理器被配置为: 使能在呈现所述打印视图的用户界面上呈现所述文档的多个页面。15. -种具有存储于其上的用于在基于网络的应用中提供文档的打印视图的指令的计 算机可读存储器设备,所述指令包括: 在服务器处提供所述文档用于通过浏览器或客户端应用查看和编辑; 在所述服务器处生成所述文档的所述打印视图; 将所述打印视图提供给所述浏览器或所述客户端应用,使得所述打印视图在多个浏览 器用户界面上一致地显示; 使能在所述浏览器或所述客户端应用的用户界面上邻近呈现的文档来呈现所述打印 视图,或者除了呈现文档的用户界面以外在所述浏览器和所述客户端应用中的一个的不同 的用户界面上呈现所述打印视图;以及 响应于通过所述浏览器或所述客户端应用在所述文档中的编辑变化而在所述服务器 处更新所述打印视图。
【文档编号】G06F3/12GK105940370SQ201580006276
【公开日】2016年9月14日
【申请日】2015年1月21日
【发明人】R·韦克菲尔德, A·陈
【申请人】微软技术许可有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1