派送字体字形的制作方法_2

文档序号:8472939阅读:来源:国知局
告的所创建的文档将包含可能需要使用一个或多个字体来显示的内容部分。即,当文档被转发给另一个用户,诸如转发给编辑或最终接受者时,接收系统将使用字体的部分或全部。所需要的字体可以被嵌入在电子文档中或另外存储在接收系统中。如果这样的话,接收系统可以从该位置检索字体并且显示文档。作为另一个示例,字体可以是从动态字体服务器可获得的,以及接收系统可以向字体服务器请求字体以与特定文档一起使用。在一些实施方式中,只有字体的对于显示所必需的部分才被请求和/或转发。例如,如果接收系统仅仅需要,比如说,字体的字形中的大约10%,则系统可以在请求中指示这一点,以及字体服务器可以响应于请求而打包并且返回该子集。
[0027]图2示出了可以派送字体的部分或全部的示例系统200。系统200可以包括计算机系统202,其可以将预定义和/或自定义字体包括在字体数据库204中。计算机系统202可以包括任何类型的计算机设备,包括但不限于服务器设备。字体数据库204包括定义包括多个字形的至少一个字体的信息,诸如在上面的示例中提及的字体Felt Tip Roman Bold的任何或全部字形。计算机系统202可以连接到任何类型的网络206,诸如连接到本地网络和/或因特网。通过网络206,计算机系统202可以与一个或多个其他系统通信,诸如与编辑系统208和/或终端用户系统210通信。例如,计算机系统202可以派送一个或多个字形以由系统208和/或210在展示诸如广告的电子文档时使用。
[0028]在一些实施方式中,字体数据库204可以包含以下字体信息项中的任何一个或全部:字体标识符、字体名称、字体语言、字体文字、字体可用的Unicode字符、字体的图像预览、用户标识符(例如,用于自定义定义的字体)、基本字体文件字节和/或基本字体文件哈希。在一些实施方式中,诸如通过使一个字体名称用于英语,另一个字体名称用于中文等等,可以使字体名称本地化。在向不同地点的用户展示可用的字体时,可以使用本地字体名称。当字体被上载到字体数据库204 (诸如自定义字体)时,可以执行对该字体的基本注册(在一些实施方式中,包括语言和/或文字确定)。字体数据库204可以与一个或多个组件交互,例如以为以下用例提供功能。文档创建者在编辑时,可以被示出相关字体的列表。例如,每一个字体的语言信息可以诸如被使用来允许用户选择。例如,当指定的字符不能被呈现时,关于每一个字体的可用字形的信息可以诸如被用于用户反馈。例如,可以维护关于字体所有权的信息,诸如用于示出特定帐户的自定义字体。可以上载自定义字体。例如,可以注册自定义字体的所有者。例如,可以注册关于字体的信息,诸如可用字符。例如,可以生成唯一字体标识符。例如,可以建立并且跟踪每帐户限额。可以准予对原始字体文件字节的访问,诸如以复制到本地文件缓存。
[0029]计算机系统202可以包括字体打包器212。字体打包器212可以包括用于以下的必要基础结构:将任何字体分成包含特定文档所必需的字形的子集,以及将字形编译成诸如.swf文件的文件。在一些实施方式中,字体打包器212可以从诸如系统208和/或210的设备接收请求。该请求可以被生成,因为系统需要某一字体来显示或展示电子文档。例如,该请求可以识别系统208和/或210需要的特定字体的字形。作为对该请求的响应,系统202可以转发从字体数据库204获取的信息。在一些实施方式中,这样的信息可以定义在请求中识别的多个字形的子集,并且不定义除该子集外的该多个字形中的剩余部分。例如,在响应中的信息可以仅仅包括特定字体的指定的字形。字体和/或字形可以使用任何适当结构的信息来定义。例如,字体可以由电子文档中的字体标识符来识别,以及一个或多个字形可以使用电子文档中的代码点来指定。
[0030]在一些实施方式中,字体打包器212可以使用加标签的字体子集来创建所请求的包,所述加标签的字体子集包括在字体数据库204中的用于字体的字体标识符和附随的基本文件、包括通过其子集可以被引用的字体名称的标签、以及待被打包的代码点集(例如,Unicode 集)。
[0031]文档创建者在管理电子文档的一个或多个方面中可以使用前端应用214。在一些实施方式中,前端应用214可以生成界面100 (图1)和/或可以用于创建诸如广告的文档。字体数据库204可以向前端应用216提供字体可用性信息216,例如使得一个或多个可用字体可以在区域106(图1)中被识别。前端应用214可以向字体数据库204提供一个或多个上载的字体218,例如文档创建者向数据库提供的自定义字体。可以以任何适当的方式来定义自定义字体,诸如通过创建矢量图形的定义,使得字体字形可以以多于一个字体大小和/或样式(例如,以黑体)生成。例如,字体可以使用任何适当的字体格式来定义,诸如以TrueType字体、OpenType字体或Type I字体的形式,仅列出了一些示例。
[0032]字体数据库204可以向字体打包器212提供一个或多个基本字体文件220。例如,字体数据库204可以提供诸如系统208和/或210的另一个系统所寻求的字形。字体打包器212可以使用所获取的字体,例如以.swf文件形式或任何其他适当的格式来生成打包的字体222。在一些实施方式中,使来自字体数据库的整个字体对字体打包器可用,字体打包器选择必需的字形并且将其打包。在一些实施方式中,字体打包器仅向字体数据库要求所需的字形,并且在接收之后将其打包。
[0033]前端应用214可以关于打包的字体222采取一个或多个行动。例如,前端应用可以将打包的字体222转发给系统208和/或210以在显示或展示电子文档时使用。作为另一个示例,前端应用可以在创建电子文档的版本时使用打包的字体222 (例如,通过以创建者选择的实际字形来替代文档中的代码点和/或其他字形占位符)。这样的创建的电子文档的版本可以被存储在静态内容服务器224中。在一些实施方式中,所创建的文档的图像可以被存储在服务器224中,以及此后被提供给一个或多个查看者。例如,使用特定字体的所创建的广告可以被存储在服务器224中,并且基于诸如用户输入特定搜索查询或访问某一页面或站点的预定义事件被派送给任何或全部终端用户系统210。
[0034]在上面提到了电子文档可以被存储在诸如服务器224中。作为另一个示例,打包的字体可以被存储。在一些实施方式中,这可以允许多个文档引用以及使用打包的字体。例如,广告文档可以以均包括相同文本的不同尺寸变体存在,或一些变体可以使用另一个变体的支持文本的仅仅子集。已存储的字体包,诸如字体.swf文件,可以允许多个变体使用共同的文件。
[0035]编辑系统208可以用于对电子文档226进行编辑。例如,文档226可能已由广告创建者使用前端应用214在系统202上创建。然后,广告编辑可以使用相同应用214或另一个应用来在文档226中作出经选择的改变。因此,一个用户可以在一个设备上创建电子文档226,并且另一个用户可以在另一个设备上修改电子文档226。另一个设备(例如,系统208和/或210)可以例如通过读取在文档中定义的每一个代码点来确定电子文档226需要哪些字形。另一个设备然后可以基于这样的确定来向系统202生成请求。例如,请求可以识别所需要的字形的子集。在一些实施方式中,字体包括非拉丁文字(诸如但不限于在中文、日语和韩语中使用的那些)。例如,为电子文档226请求的多个字形中的每一个可以是非拉丁字形。因此,电子文档226可以使用系统208和/或210来展示,使得文档包括向字体数据库204请求并且从其接收的字形。
[0036]可以执行对电子文档226的进一步编辑。在一些实施方式中,系统208和/或210可以检测编辑是否输入尚未在文档中使用的一个或多个字形,以及如果有必要,向字体数据库204请求并且接收任
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1