用于渲染内容的渲染许可的制作方法
【专利摘要】经由网络连接接收来自注册用户的打印请求。根据所述注册用户的渲染许可来渲染来自打印请求的内容。然后将渲染后的内容提供到与所述注册用户关联的设备。
【专利说明】用于渲染内容的渲染许可
【背景技术】
[0001]存在人们期望显示(例如,在计算设备上)和/或打印的内容的许多类型(文档类型、文件类型等)。为了显示和/或打印内容,与内容关联的数据通常被应用所渲染。例如,文字处理文档、电子表格、图形图像等都包含数据,当被适当的应用所渲染时,所述数据能够被显示在计算设备上或者被栅格化以供打印设备来打印。
【专利附图】
【附图说明】
[0002]以下描述包括具有以本发明实施例的实现方式的示例的方式给出的图示的附图的讨论。附图应当以示例的方式而非限制的方式被理解。如本文所用的,对一个或多个实施例的提及应当被理解为描述包含在本发明的至少一个实现方式中的特定特征、结构或特性。因而,本文中出现的诸如“在实施例中”或“在替代实施例中”的短语描述本发明的各种实施例和实施方式;而且不一定都指向相同的实施例。然而,它们也不一定是相互排斥的。
[0003]图1是图示根据各种实施例的系统的框图。
[0004]图2是图示根据各种实施例的系统的框图。
[0005]图3是图示根据各种实施例的渲染路径的框图。
[0006]图4是根据各种实施例的系统中的操作的流程图。
[0007]图5是根据各种实施例的系统中的操作的流程图。
【具体实施方式】
[0008]本文描述的实施例涉及用于渲染(包括远程渲染)内容的系统、方法和过程。渲染通常指的是从一组数据生成图像(例如,用于显示)。当通过网络发送内容以用于联网的设备(例如,服务器)来渲染时,发生远程或云渲染。本文为了清楚和简单起见的目的,术语渲染被用于包含所有类型的渲染,包括远程或云渲染。
[0009]鉴于各种内容类型(例如,文档、电子表格、演示幻灯片、图像、图形等),还存在用于渲染不同类型的内容的各种应用。在许多情况下,存在能够渲染相同内容的多个不同的应用。然而,并非所有的应用同等地渲染相同的内容。例如,某些类型的内容具有被特别设计成渲染所述内容的本机应用。虽然其他应用可能也能够渲染所述内容,但是用于特定类型的内容的本机应用可以更准确地、或者以使用户视觉上更愉悦的方式来渲染所述内容。
[0010]在各种实施例中,渲染系统能够渲染许多不同类型的内容。同样地,渲染系统具有可供在渲染不同类型的内容中使用的许多不同应用。本文描述的实施例促进基于内容的类型和基于与请求所述渲染的用户关联的渲染许可来选择渲染路径。
[0011]图1是图示根据各种实施例的系统的框图。图1包括根据各种实施例的特定组件、模块等。然而,在不同实施例中,更多、更少、和/或其他组件、模块、组件/模块的布置等可以根据本文所述的教导来使用。此外,本文描述的各种组件、模块等可以被实施为一个或多个软件模块、硬件模块、特殊用途的硬件(例如,专用硬件、专用集成电路(ASIC)、嵌入式控制器、硬接线电路等)或其某种组合。[0012]如系统100周围的虚线所示,系统100的模块和组件可以被集成到单个物理计算设备内或者它们可以在物理上分布在例如通过网络连接的多个计算设备中。在各种实施例中,系统100实现打印服务。注册模块110向系统100注册用户。作为用户注册的部分,注册模块110允许用户连接一个或多个图像形成设备(例如,打印机)与打印服务并向打印服务注册所述设备。所述打印服务可以提供web (网络)接口(例如,网站)以供用户访问用户账户信息、更新用户偏好和/或许可、发起打印请求等。特别地,注册模块110接收渲染许可的用户选择。或者,在没有渲染许可的用户选择的情况下,注册模块110给用户分配默认渲染许可。数据库120储存包括渲染许可的用户详情(例如,账户信息等)。
[0013]通信模块130通过网络接收来自注册用户的打印请求。如本文所用,打印请求指的是对要被打印的内容的请求。虽然本文描述的实施例是针对打印请求的,但是其他类型的请求可以在替代实施例中处理。例如,内容可以被渲染以供显示并被发送到显示设备,而不是对内容进行打印。
[0014]响应于接收到打印请求,系统100确定发送请求的用户的身份,并针对与用户关联的渲染许可而查询数据库120。考虑到所述渲染许可,渲染模块140对与打印请求一起接收到的内容进行渲染。在各种实施例中,如果用户的许可使得多个应用可访问以用于渲染所述内容,则渲染模块140选择用于渲染内容的最优选的应用。如本文所用,从优选到非优选的应用的层次可以通过不同类型的内容的偏好的预定义映射来确定。此类映射可以是默认系统映射,或者可以是由用户定义的。在某些实施例中,所述打印请求可以包括用于渲染内容的特定的用户选择的偏好,如果其鉴于渲染许可而被允许,则可以覆盖已存储的层次偏好。
[0015]图2是图示根据各种实施例的系统的框图。图2包括根据各种实施例的特定组件、模块等。然而,在不同的实施例中,更多、更少、和/或其他组件、模块、组件/模块的布置等可以根据本文所述的教导使用。此外,本文描述的各种组件、模块等可以被实现为一个或多个软件模块、硬件模块、特殊用途硬件(例如,专用硬件、专用集成电路(ASIC)、嵌入式控制器、硬接线电路等)或其某种组合。图2所示的各种模块和/或组件可以被实现为包含由处理器(例如,处理器222)运行并且存储在存储器(如存储器224)中用于执行本文所述的操作和功能的指令的计算机可读存储介质。
[0016]如系统210周围的虚线所示,系统210的模块和组件可以被集成到单个物理计算设备内或者它们可以在物理上分布在例如通过网络连接的多个计算设备中。用户经由web接口(例如,网页)从计算设备(例如,智能电话230、笔记本计算机、平板、台式机、或能够访问互联网的其他计算设备)向系统210注册。作为用户注册的部分,注册模块212允许用户连接一个或多个图像形成设备(例如,打印机240)与打印服务并向打印服务注册所述设备。除了实现用户注册之外,所述web接口还允许用户访问用户账户信息、更新用户偏好和/或许可、链接附加设备、发起打印请求等。
[0017]特别地,注册模块212促进对打印服务的用户的渲染许可的管理。在各种实施例中,渲染许可被组织成三层。更多层、更少层或无层可以在其他实施例中使用。在三层系统的示例中,所述层可以是“免费用户”层、“付费用户”层和“高级用户”层。每层允许渲染模块218访问用于渲染内容的一组一个或多个应用。例如,如果用户注册为“付费用户”,并且期望打印 Microsoft Word ? 文档(可向 Redmond, WA 的 Microsoft Corporation 购买),系统210可能允许渲染模块218使用官方的Microsoft Word?应用来渲染所述内容。然而,如果所述用户不是“付费用户”,而是“免费用户”,那么系统210可能会拒绝访问MicrosoftWord?,而是允许访问 Open Office Writer (可向 Forest Hill, Maryland 的 Apache 软件基金会购买)来渲染所述文档。
[0018]进一步扩展上述示例,每个渲染层可以包括用于渲染不同类型的内容的应用的集合。例如,“免费用户”渲染层可能包括用来渲染文字处理文档、电子表格、演示幻灯片、图形文件等的开源办公应用套件。“付费用户”渲染层可能包括对Microsoft Office?应用套件的访问。“高级”层可能包括对其他附加应用(包括专业应用,诸如可向Mountain View, CA的 Adobe System 购买的 Adobe Photoshop?)的访问。
[0019]在各种实施例中,对渲染层的访问权限是累积的。换句话说,“高级用户”具有对“付费用户”和“免费用户”可用的所有应用的访问权限。对特定渲染层的访问可以基于付费订阅或其他访问机制。例如,用户可以简单地通过注册来访问“免费用户”层。“付费用户”层可以是与对服务的付费订阅或即印即付机制结合而可访问的。“高级用户”层可以是用较高订阅支付或其他支付机制可访问的。其他访问机制可能包括基于使用来获得用于访问不同渲染层的令牌(token)和/或得分。例如,代替付费订阅,每个月打印100份文档的用户可以比每个月只打印10份文档的用户接收到对更高的渲染层的访问权限。
[0020]在某些实施例中,渲染层能够是可定制的。例如,每个应用可能有单独的费用(例如,货币、令牌、基于使用的等),并且每个用户可以创建用来解决其渲染需求的自定义应用包。此外,在不需要分层包的情况下,渲染许可能够针对每种类型的内容而被单独地管理。
[0021]无论在用户和注册模块212之间协商的渲染许可是什么,这些许可在数据库214中进行维护和/或存储。通信模块216通过网络接收来自注册用户的打印请求。请求可以经由web接口(例如,超文本传输协议(HTTP)、HTTPS等)、电子邮件、或其他合适的通信协议来接收。在电子邮件的情况下,电子邮件服务器220接收来自用户的电子邮件打印请求(例如,带有要被打印的附件)。基于发送者的电子邮件地址或其他识别信息,系统210访问数据库214以确定对于打印请求的渲染许可。渲染模块218继续进行到基于内容类型(例如,文字处理文档与电子表格等)并鉴于所述渲染许可而渲染来自打印请求的内容。在各种实施例中,默认值是使用可用来渲染所述内容的“最佳”的应用。然而,在某些实施例中,用户可能能够应请求来覆盖默认值,假设所述用户的渲染许可允许这样的话。
[0022]在示例中,用户将附有Word?文档的打印请求发送到系统210。如果所述用户被确定为“免费用户”,所述渲染许可可以允许使用Open Office Writer而不是MicrosoftWord?来渲染。然而,在此类实例中,通信模块216可以将更好的渲染选项可用的通知发送给用户,并且给所述用户提供机会来升级他/她的许可(或是针对这一个打印作业,或是一般地针对用户账户)。用户可以通过(例如,经由电子邮件或web接口)对通知进行响应来同意许可升级并且提供对于所述升级的授权。例如,数据库214可以维护用户的信用卡和/或银行账户信息。因而,用于所述升级的用户授权能够允许注册模块212将所述升级计入用户的账户。一旦注册模块212确定批准所述升级,渲染模块218被通知并且继续进行基于已升级的渲染许可而使用Microsoft Word来渲染所述Word?文档。
[0023]图3是图示渲染路径的示例的流程图。在各种实施例中,用于给定的打印请求或渲染请求的渲染路径由用户类型310和内容类型320来确定。内容类型指示在渲染与所述请求关联的内容中使用什么类型的应用。例如,如果所述内容包括用于电子表格的数据,那么所述内容类型就是“电子表格”,并且,能够渲染电子表格的应用将是所期望的。为了确定哪些(如果有的话)电子表格应用可供渲染电子表格数据使用,需要确定用户类型。
[0024]在各种实施例中,用户类型可以对应于多个分层类别之一(例如,免费用户、付费用户、高级用户等)。在某些实施例中,某些内容类型的渲染可以被限制在某些渲染层中。例如,某些内容类型可能必须访问“层I”应用。如果所述用户类型不准许访问“层I”应用,则来自所述请求的内容可能不被渲染。如果每个渲染层具有用于渲染特定内容类型的选项,但是所述用户类型只允许访问“层2”和“层3”应用,那么兼容的“层2”应用可能被用来渲染来自所述请求的内容。
[0025]图4是根据各种实施例的系统中的操作的流程图。图4包括根据某些实施例的特定操作和运行次序。然而,在不同的实施例中,省略一个或多个所述操作和/或以其他次序继续执行的其他操作也可以根据本文所述的教导内容来使用。
[0026]系统通过网络接收410来自系统的注册用户的打印请求。所述打印请求可以经由HTTP、HTTPS、电子邮件、或其他合适的通信协议来接收。在各种实施例中,所述打印请求包括要被打印的内容和/或对要被打印的内容的引用(例如,web链接)。所述系统至少部分基于与用户关联的渲染许可来渲染420与所述打印请求关联的内容。如果系统能够处理不同类型的内容(例如,诸如电子表格、演示幻灯片、图形文件等之类的不同内容类型),那么所述系统可以附加地使用内容类型来确定如何渲染该内容。
[0027]所述系统通过网络将渲染后的内容提供430给与注册用户关联的设备。例如,可向 Palo Alto, CA 的 Hewlett Packard Company 购买的 ePrint 中心(ePrint Center, ePC)允许用户向ePC注册并且将联网的打印设备链接到所述用户的ePC账户。因而,当用户发送打印请求时,ePC系统处理所述请求,包括渲染(以及可能栅格化)来自所述请求的内容。ePC将处理后的内容发送到链接至发送所述请求的用户的联网的打印机。
[0028]图5是根据各种实施例的系统中的操作的流程图。图5包括根据某些实施例的特定操作和执行次序。然而,在不同的实施例中,省略一个或多个所述操作和/或以其他次序继续执行的其他操作也可以根据本文所述的教导来使用。
[0029]系统通过网络接收510来自系统的注册用户的打印请求。所述打印请求可以经由HTTP、HTTPS、电子邮件、或其他合适的通信协议来接收。在各种实施例中,所述打印请求包括要被打印的内容和/或对要被打印的内容的引用(例如,web链接)。系统鉴于所述打印请求的内容而确定420用于所述注册用户的渲染许可。如果附加的许可是可用的530,则所述注册用户征求540升级。附加许可的可用性可以意味着对于打印请求的内容的更好的渲染选项可用。如果附加的许可不是可用的530,这可以意味着所述用户已经具有对优选的可用渲染选项的访问权限。同样地,使用用于渲染的第一(例如,优选的)应用来渲染570所述内容。
[0030]如果响应于升级征求540,所述用户用请求550进行响应以进行升级(例如,包括货币支付或其他验证令牌),那么所述系统继续授予对第一(例如,优选的)应用的访问权限并且使用所述第一应用来渲染570所述内容。如果,响应于升级征求540,所述用户不请求550对渲染许可的升级,那么所述系统继续进行到用第二应用(即,适合于渲染内容,但是可能与第一应用相比不太优选)来渲染所述内容。[0031]可以在不背离其范围的情况下对本发明所公开的实施例和实现方式进行各种修改。因此,本文的图示和示例应该被解释为说明性而非限制性意义。
【权利要求】
1.一种方法,包括: 经由网络连接接收来自联网的打印机的注册用户的打印请求; 至少部分基于与所述注册用户关联的渲染许可和内容类型来渲染与所述打印请求关联的内容;以及 经由网络连接将渲染后的内容提供给与所述注册用户关联的设备。
2.根据权利要求1所述的方法,其中,至少部分基于渲染许可来渲染内容包括: 采用第一应用来渲染所述内容,如果鉴于渲染许可而被允许的话;否则 采用第二应用来渲染所述内容或丢弃所述打印请求。
3.根据权利要求1所述的方法,进一步包括: 在渲染之前,确定所述注册用户的渲染许可防止采用第一应用来进行渲染但允许采用第二应用来进行渲染; 征求所述注册用户以采用第一应用来渲染内容; 接收来自所述注册用户的输入以添加渲染许可,其包括用以采用第一应用来渲染内容的许可;以及 鉴于所添加的渲染许可而采用所述第一应用来渲染所述打印请求的内容。
4.根据权利要求3所述 的方法,其中,接收输入以添加渲染许可包括: 接收用于所添加的渲染许可的支付或支付验证。
5.根据权利要求1所述的方法,其中,渲染内容进一步至少部分基于所述打印请求的内容类型。
6.一种包含指令的非临时计算机可读存储介质,当所述指令被执行时,使计算机进行以下动作: 向打印服务注册用户; 将联网的图像形成设备与用户相关联; 将所述用户与来自多个渲染层之中的第一渲染层相关联,每个层具有用于渲染内容的一个或多个应用; 接收来自所述用户的成像请求; 根据与用户关联的第一渲染层来渲染与所述成像请求关联的内容;以及 将渲染后的内容提供给与所述用户关联的图像形成设备。
7.根据权利要求6所述的非临时计算机可读存储介质,进一步包括使计算机进行以下动作的指令: 在渲染之前并且基于与所述用户关联的第一渲染层来确定用于渲染与所述成像请求关联的内容的应用。
8.根据权利要求7所述的非临时计算机可读存储介质,进一步包括使计算机进行以下动作的指令: 给所述用户提供第二应用能够渲染与所述成像请求关联的内容的通知;以及 响应于用户输入而将所述用户与第二 渲染层相关联;以及 根据第二渲染层来渲染与所述成像请求关联的内容。
9.根据权利要求8所述的非临时计算机可读存储介质,其中,所述用户输入包括支付或支付验证。
10.根据权利要求7所述的非临时计算机可读存储介质,其中,引起所述渲染的指令进一步包括使得计算机进行以下动作的指令: 至少部分基于与所述成像请求关联的内容类型来渲染内容。
11.一种系统,包括 注册模块,用于向打印服务注册用户; 数据库,用于存储包括与所述用户关联的渲染许可的用户详情; 通信模块,用于通过网络接收来自用户的打印请求;以及 渲染模块,用于根据与所述用户关联的渲染许可来渲染来自所述打印请求的内容。
12.根据权利要求11所述的系统,所述通信模块进一步通过网络将渲染后的内容提供到与所述用户关联的打印设备。
13.根据权利要求10所述的系统,所述渲染模块进一步进行以下动作: 在渲染之前,至少部分基于所述内容的内容类型来确定能够渲染与所述打印请求关联的内容的应用;以及 从能够渲染所述内容的应用之中选择所述用户已经具有对其的许可的应用。
14.根据权利要求13所述的系统,所述通信模块进一步进行以下动作: 通过网络通知所述 用户其他应用能够渲染与所述打印请求关联的内容;以及响应于通信模块接收到授权渲染许可中的改变的合格令牌的指示,所述注册模块改变所述用户的渲染许可。
【文档编号】G06F3/12GK103890706SQ201180074572
【公开日】2014年6月25日 申请日期:2011年10月31日 优先权日:2011年10月31日
【发明者】S.萨兰加马特 申请人:惠普发展公司,有限责任合伙企业