CN102439588B - 派送字体字形 - Google Patents

派送字体字形 Download PDF

Info

Publication number
CN102439588B
CN102439588B CN201080019168.7A CN201080019168A CN102439588B CN 102439588 B CN102439588 B CN 102439588B CN 201080019168 A CN201080019168 A CN 201080019168A CN 102439588 B CN102439588 B CN 102439588B
Authority
CN
China
Prior art keywords
font
equipment
electronic document
subset
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201080019168.7A
Other languages
English (en)
Other versions
CN102439588A (zh
Inventor
内斯特·赫南德斯
道格拉斯·R·本特森
德米特里·波尔特诺夫
马尼什·古普塔
阿列克谢·Y·巴尔斯基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to CN201510158312.XA priority Critical patent/CN104794103A/zh
Publication of CN102439588A publication Critical patent/CN102439588A/zh
Application granted granted Critical
Publication of CN102439588B publication Critical patent/CN102439588B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography

Abstract

一种用于获取文档的字体的计算机实现的方法包括:确定在电子文档的内容中指定的字体的每一个字形,该确定识别包括在该字体中的多个字形的子集,该子集在其上未存储有该字体的第一设备上被确定。该方法包括在第一设备上基于所述确定来向第二设备生成请求,该请求向第二设备识别该子集。该方法包括在第一设备处接收从第二设备响应于该请求发送的、并且定义该多个字形的该子集的信息,该信息没有定义除该子集外的该多个字形中的剩余部分。该方法包括在第一设备上使用所接收到的信息来生成电子文档的展示,该展示包括该多个字形的该子集。

Description

派送字体字形
相关申请的交叉引用
本申请要求于2009年3月11日提交、并且题为“Serving FontGlyphs(派送字体字形)”的美国专利申请12/401,217的优先权,在此通过引用并入其全部内容。
技术领域
本文档涉及信息处理。
背景技术
计算机系统用于分发各种类型的内容。内容的一个示例是广告,其中广告可以在计算机屏、电视屏或广告牌上展示,仅列出一些示例。例如,诸如广告的内容可以被创建来向一般目标受众的所有成员显示,或内容展示可以在逐个用户的基础上来确定。
包括在内容中的文本可以使用一个或多个字体来生成。字体可以包括构成完整字样的字符,其的常见示例是Times、Courier和Helvetica。以英语外的语言的内容可以使用非拉丁文字(script)来呈现消息。字体有时与诸如广告的特定电子文档打包在一起。当聚集在文件中时,一些非拉丁文字可能占据巨大数量的存储空间,诸如大约20MB。
发明内容
在第一方面中,一种用于获取文档的字体的计算机实现的方法包括:确定在电子文档的内容中指定的字体的每一个字形(glyph),该确定识别包括在该字体中的多个字形的子集,该子集在其上未存储有该字体的第一设备上被确定。该方法包括在第一设备上基于所述确定来向第二设备生成请求,该请求向第二设备识别该子集。该方法包括在第一设备处接收从第二设备响应于该请求发送的、并且定义该多个字形的该子集的信息,该信息没有定义除该子集外的该多个字形中的剩余部分。该方法包括在第一设备上使用所接收到的信息来生成电子文档的展示,该展示包括该多个字形的该子集。
实施方式可以包括任何或全部以下特征。该计算机实现的方法进一步包括:在展示期间从用户接收电子文档的修订;确定该修订包括该字体的没有被该信息指定的至少另一个字形;向第二设备生成关于另一个字形的新的请求;从第二设备接收定义该另一个字形的另外信息;以及更新展示以在电子文档中还显示该另一个字形。确定修订包括至少另一个字形响应于在接收该修订之后检测到预确定的时间流逝来执行。该计算机实现的方法进一步包括:在第一设备上在接收修订之前从第三设备接收电子文档。修订在第一设备上的应用程序的实例中接收,电子文档已在第三设备上使用应用程序的另一个实例创建。应用程序在其中存储有用于请求信息的第二设备的地址,该方法进一步包括:访问应用程序中的地址以生成请求。电子文档在其中存储有用于请求信息的第二设备的地址,该方法进一步包括:访问电子文档中的地址以生成请求。电子文档包括定向到操作第一设备的用户的广告,以及其中展示包括向该用户显示该广告。字体由电子文档中的字体标识符来识别,以及多个字形的子集中的每一个是使用电子文档中的代码点(codepoint)来指定的。
在第二方面中,一种用于为文档提供自定义字体的计算机实现的方法包括:在第一设备中接收第一输入,该第一输入指定自定义字体的多个字形的子集以形成电子文档的内容。该方法包括:在第一设备中接收第二输入,该第二输入包括定义该自定义字体的该多个字形的信息。该方法包括将该信息转发给第二设备,其被配置成基于来自电子文档的接受者的请求来提供该信息。该方法包括:将电子文档转发给其上未存储有该自定义字体的第三设备,其中第三设备向第二设备请求该信息。
实施方式可以包括任何或全部以下特征。电子文档包括定向到操作第三设备的用户的广告,以及其中第三设备向该用户显示包括该多个字形的子集的广告。字体由电子文档中的字体标识符来识别,以及该多个字形的子集中的每一个是使用电子文档中的代码点来指定的。字体包括非拉丁文字,以及其中该多个字形中的每一个是非拉丁字形。
在第三方面中,一种系统包括字体数据库,其包括定义包括多个字形的至少一个字体的信息。该系统包括字体打包组件,其被配置成接收来自设备的请求,并且作为响应,转发从字体数据库获取的信息,该信息定义在请求中识别的该多个字形的子集,并且没有定义除该子集外的该多个字形中的剩余部分。
实施方式可以包括任何或全部以下特征。该系统进一步包括在该系统中执行并且由用户操作来创建电子文档的应用程序。电子文档在其中存储有用于请求信息的字体数据库的地址,以及其中请求使用该地址来生成。应用程序还在设备上执行并且在其中存储有用于请求信息的字体数据库的地址,以及其中请求使用该地址来生成。应用程序为设备的用户提供输入电子文档的修订,以及其中设备基于确定该修订包括字体的没有被该信息指定的至少另一个字形来向字体服务器生成新的请求。该系统进一步包括字体服务器,其包括字体数据库和字体打包组件,其中应用程序在创建电子文档时与字体服务器交互。字体服务器向应用程序通信字体可用性。
实施方式可以提供任何或全部以下优势。电子文档的展示可以通过动态派送字体来改进。电子文档所需的字体的字形的子集可以被打包,并且派送给待显示该文档的设备。文档创建者可以为文档定义自定义字体,并且将该自定义字体上载到服务器,接收该文档的系统将向该服务器请求字体以展示。
在附图和下面的描述中阐述了一个或多个实施方式的细节。其他特征和优势从描述和附图以及从权利要求将是显而易见的。
附图说明
图1示出了可以用于创建电子文档的示例图形用户界面。
图2示出了可以派送字体的部分或全部的示例系统。
图3示出了包括字体服务器的示例系统。
图4示出了具有示例编译时间和文件大小的表。
图5示出了用于获取文档的字体的示例方法的流程图。
图6示出了用于为文档提供自定义字体的示例方法的流程图。
图7是可以结合在本文档中描述的计算机实现的方法使用的计算系统的框图。
各附图中相同的参考标记指示相同的元素。
具体实施方式
图1示出了可以用于创建电子文档的示例图形用户界面100。在一些实施方式中,诸如广告设计者的文档创建者使用界面100来创建文档(例如,广告)以由一个或多个其他人(例如,广告编辑或广告接受者)查阅和/或向一个或多个其他人显示。例如,界面100可以允许创建者在文档中使用一个或多个字体(诸如现有字体或创建者定义的自定义字体);接收所创建的文档的系统或应用可以从指定的字体服务器检索字体的对显示文档所必需的内容。
界面100可以包括预览区102。预览区102可以包括一个或多个内容部分,诸如图像、图形、文本、链接或创建者选择包括在文档中的任何其他内容。在此,除别的外,预览区102当前包括文本部分104A-C。界面100可以包括专用于使文档的内容格式化的一个或多个区域106。在一些实施方式中,格式化可以在逐部分的基础上被应用于所包括的内容。例如,区域106A可以用于为部分104A选择一个或多个格式化方面,以及区域106B类似地可以用于为部分104B选择一个或多个格式化方面等等。在一些实施方式中,创建者可以使用区域106来输入部分的文本内容、为部分选择字体和/或为部分选择颜色。例如,文本部分104A在此包括使用字体Felt Tip Roman Bold以被识别为“#000000”的颜色来写的内容“Headline”。
如此,诸如广告的所创建的文档将包含可能需要使用一个或多个字体来显示的内容部分。即,当文档被转发给另一个用户,诸如转发给编辑或最终接受者时,接收系统将使用字体的部分或全部。所需要的字体可以被嵌入在电子文档中或另外存储在接收系统中。如果这样的话,接收系统可以从该位置检索字体并且显示文档。作为另一个示例,字体可以是从动态字体服务器可获得的,以及接收系统可以向字体服务器请求字体以与特定文档一起使用。在一些实施方式中,只有字体的对于显示所必需的部分才被请求和/或转发。例如,如果接收系统仅仅需要,比如说,字体的字形中的大约10%,则系统可以在请求中指示这一点,以及字体服务器可以响应于请求而打包并且返回该子集。
图2示出了可以派送字体的部分或全部的示例系统200。系统200可以包括计算机系统202,其可以将预定义和/或自定义字体包括在字体数据库204中。计算机系统202可以包括任何类型的计算机设备,包括但不限于服务器设备。字体数据库204包括定义包括多个字形的至少一个字体的信息,诸如在上面的示例中提及的字体Felt Tip RomanBold的任何或全部字形。计算机系统202可以连接到任何类型的网络206,诸如连接到本地网络和/或因特网。通过网络206,计算机系统202可以与一个或多个其他系统通信,诸如与编辑系统208和/或终端用户系统210通信。例如,计算机系统202可以派送一个或多个字形以由系统208和/或210在展示诸如广告的电子文档时使用。
在一些实施方式中,字体数据库204可以包含以下字体信息项中的任何一个或全部:字体标识符、字体名称、字体语言、字体文字、字体可用的Unicode字符、字体的图像预览、用户标识符(例如,用于自定义定义的字体)、基本字体文件字节和/或基本字体文件哈希。在一些实施方式中,诸如通过使一个字体名称用于英语,另一个字体名称用于中文等等,可以使字体名称本地化。在向不同地点的用户展示可用的字体时,可以使用本地字体名称。当字体被上载到字体数据库204(诸如自定义字体)时,可以执行对该字体的基本注册(在一些实施方式中,包括语言和/或文字确定)。字体数据库204可以与一个或多个组件交互,例如以为以下用例提供功能。文档创建者在编辑时,可以被示出相关字体的列表。例如,每一个字体的语言信息可以诸如被使用来允许用户选择。例如,当指定的字符不能被呈现时,关于每一个字体的可用字形的信息可以诸如被用于用户反馈。例如,可以维护关于字体所有权的信息,诸如用于示出特定帐户的自定义字体。可以上载自定义字体。例如,可以注册自定义字体的所有者。例如,可以注册关于字体的信息,诸如可用字符。例如,可以生成唯一字体标识符。例如,可以建立并且跟踪每帐户限额。可以准予对原始字体文件字节的访问,诸如以复制到本地文件缓存。
计算机系统202可以包括字体打包器212。字体打包器212可以包括用于以下的必要基础结构:将任何字体分成包含特定文档所必需的字形的子集,以及将字形编译成诸如.swf文件的文件。在一些实施方式中,字体打包器212可以从诸如系统208和/或210的设备接收请求。该请求可以被生成,因为系统需要某一字体来显示或展示电子文档。例如,该请求可以识别系统208和/或210需要的特定字体的字形。作为对该请求的响应,系统202可以转发从字体数据库204获取的信息。在一些实施方式中,这样的信息可以定义在请求中识别的多个字形的子集,并且不定义除该子集外的该多个字形中的剩余部分。例如,在响应中的信息可以仅仅包括特定字体的指定的字形。字体和/或字形可以使用任何适当结构的信息来定义。例如,字体可以由电子文档中的字体标识符来识别,以及一个或多个字形可以使用电子文档中的代码点来指定。
在一些实施方式中,字体打包器212可以使用加标签的字体子集来创建所请求的包,所述加标签的字体子集包括在字体数据库204中的用于字体的字体标识符和附随的基本文件、包括通过其子集可以被引用的字体名称的标签、以及待被打包的代码点集(例如,Unicode集)。
文档创建者在管理电子文档的一个或多个方面中可以使用前端应用214。在一些实施方式中,前端应用214可以生成界面100(图1)和/或可以用于创建诸如广告的文档。字体数据库204可以向前端应用216提供字体可用性信息216,例如使得一个或多个可用字体可以在区域106(图1)中被识别。前端应用214可以向字体数据库204提供一个或多个上载的字体218,例如文档创建者向数据库提供的自定义字体。可以以任何适当的方式来定义自定义字体,诸如通过创建矢量图形的定义,使得字体字形可以以多于一个字体大小和/或样式(例如,以黑体)生成。例如,字体可以使用任何适当的字体格式来定义,诸如以TrueType字体、OpenType字体或Type 1字体的形式,仅列出了一些示例。
字体数据库204可以向字体打包器212提供一个或多个基本字体文件220。例如,字体数据库204可以提供诸如系统208和/或210的另一个系统所寻求的字形。字体打包器212可以使用所获取的字体,例如以.swf文件形式或任何其他适当的格式来生成打包的字体222。在一些实施方式中,使来自字体数据库的整个字体对字体打包器可用,字体打包器选择必需的字形并且将其打包。在一些实施方式中,字体打包器仅向字体数据库要求所需的字形,并且在接收之后将其打包。
前端应用214可以关于打包的字体222采取一个或多个行动。例如,前端应用可以将打包的字体222转发给系统208和/或210以在显示或展示电子文档时使用。作为另一个示例,前端应用可以在创建电子文档的版本时使用打包的字体222(例如,通过以创建者选择的实际字形来替代文档中的代码点和/或其他字形占位符)。这样的创建的电子文档的版本可以被存储在静态内容服务器224中。在一些实施方式中,所创建的文档的图像可以被存储在服务器224中,以及此后被提供给一个或多个查看者。例如,使用特定字体的所创建的广告可以被存储在服务器224中,并且基于诸如用户输入特定搜索查询或访问某一页面或站点的预定义事件被派送给任何或全部终端用户系统210。
在上面提到了电子文档可以被存储在诸如服务器224中。作为另一个示例,打包的字体可以被存储。在一些实施方式中,这可以允许多个文档引用以及使用打包的字体。例如,广告文档可以以均包括相同文本的不同尺寸变体存在,或一些变体可以使用另一个变体的支持文本的仅仅子集。已存储的字体包,诸如字体.swf文件,可以允许多个变体使用共同的文件。
编辑系统208可以用于对电子文档226进行编辑。例如,文档226可能已由广告创建者使用前端应用214在系统202上创建。然后,广告编辑可以使用相同应用214或另一个应用来在文档226中作出经选择的改变。因此,一个用户可以在一个设备上创建电子文档226,并且另一个用户可以在另一个设备上修改电子文档226。另一个设备(例如,系统208和/或210)可以例如通过读取在文档中定义的每一个代码点来确定电子文档226需要哪些字形。另一个设备然后可以基于这样的确定来向系统202生成请求。例如,请求可以识别所需要的字形的子集。在一些实施方式中,字体包括非拉丁文字(诸如但不限于在中文、日语和韩语中使用的那些)。例如,为电子文档226请求的多个字形中的每一个可以是非拉丁字形。因此,电子文档226可以使用系统208和/或210来展示,使得文档包括向字体数据库204请求并且从其接收的字形。
可以执行对电子文档226的进一步编辑。在一些实施方式中,系统208和/或210可以检测编辑是否输入尚未在文档中使用的一个或多个字形,以及如果有必要,向字体数据库204请求并且接收任何这样的字形。当接收了所请求的字形时,可以对文档226进行更新。在一些实施方式中,可以基于诸如来自用户的明确刷新命令或用户不活动时期的预确定事件,来执行修订的文档包括尚未被存储在本地设备上的至少另一个字形的确定。例如,假设编辑正致力于对电子文档226的修订。在用户在文档中作出改变并且某一时间流逝而没有来自用户的进一步输入之后,系统可以自动确定所修订的文档是否需要尚未存在的任何另外的字形。如果这样的话,可以请求所需要的字形。在发出请求的设备上的这个和/或其他功能可以通过执行以任何脚本形式的指令,诸如经由Javascript代码来提供。
可以请求比当前所需要的更多的字形。例如,向字体打包器212请求并且作为响应而接收的字形不仅需要包含至那点在文档中输入的字形。在一些实施方式中,应用214和/或它在其中实现的系统可以被配置来基于可能的使用来作出一个或多个假设和/或推断,并且基于其来请求对应的字形。例如,如果用户输入来自拉丁字母表的字符“abc”,则预期对拉丁文本的进一步用户输入,可以请求字符a-z的整个范围。
在一些实施方式中,当符合条件时,诸如如果所请求的字体不存在于字体数据库214中,可以生成例外。相比之下,可以明确忽略一个或多个问题。在一些实施方式中,可以不为无效字体范围生成例外。例如,如果发出对包括在基本字体中不存在的一个或多个字符的字体子集的请求,则响应于该请求所述字符将被省略/忽略。
可以使用字体数据库204的地址来请求字形。例如,字体可用性信息所覆盖的每一个字体可以通过字体标识符识别。然后可以通过将字体打包器212与字体和具体字形的标识相联系来请求所寻求的字形。在一些实施方式中,何处获取未嵌入在电子文档中并且另外对接收系统不可用的字体的必要信息可以被包括在文档226中。例如,文档226可以包括将计算机系统202和/或字体打包器212识别为用于请求文档的字体的资源的信息。在一些实施方式中,用于获取字体的必要信息可以被包括在处理文档的适用程序中,诸如浏览器和/或前端应用214中。例如,前端应用214可以被安装在文档在其上被创建的设备(例如,在系统202上)和文档待在其上被编辑的设备(例如,在系统208上)两者上。程序214然后可以使用其对计算机系统202和/或字体打包器212的内部识别来寻求并且获取必要字体。
终端用户系统210可以用于访问或编辑一个或多个电子文档。在一些实施方式中,终端用户系统可以包括任何类型的计算机设备,诸如个人计算机、移动设备或电话。例如,使用预定义的字体(诸如自定义字体)的广告可以在消费者所操作的设备上显示。
图3示出了包括字体服务器302的示例系统300。在一些实施方式中能够与系统200(图2)中的那些相对应的组件使用对应的参考数字来识别。在一些实施方式中,服务器302实现与字体打包器212相同的接口,并且充当包装器(wrapper)以阻挡对服务器的调用。例如,使用标准客户端-服务器构架的实施方式可以允许减少或最小化在前端程序214中的代码依赖。
静态字体数据库304可以被包括在系统300中。在一些实施方式中,数据库304可以仅仅允许对可用字体的查询。例如,数据库304可以被封装在服务器302中,诸如以避免直接对前端数据的应用依赖(例如,经由应用214)。
例如,打包的字体可以由服务器302提供以由前端应用214接收,诸如以由终端用户系统或编辑器直接接收、或以放置在服务器224中。
图4示出了具有示例编译时间和文件大小的表400。在此,字体列402指示哪个字体被特定字符或多个字符所涉及。反混淆(antialiasing)列404指示是否为在列402中识别的字体提供高级反混淆。字符列406指示在每一个示例中哪些字符使用所识别的字体来定义。编译时间列408指示以毫秒为单位的中间编译时间。文件大小列410指示为在列406中识别的字符生成的.swf文件的字节表示的大小。
图5示出了用于获取文档的字体的示例方法500的流程图。在一些实施方式中,方法500可以例如在系统200和/或300中由执行计算机可读介质中的指令的处理器来执行。在一些实施方式中,可以执行更多或更少的步骤;作为另一个示例,可以按照另一个顺序执行一个或多个步骤。
在步骤510,确定在电子文档的内容中指定的字体的每一个字形。该确定识别包括在该字体中的多个字形的子集。该子集在其上未存储有该字体的第一设备上被确定。例如,系统208和/或210可以确定电子文档226的字形,对于其所述系统没有对应的字体。
在步骤520,基于该确定向第二设备生成请求。该请求向第二设备识别该子集。例如,系统208和/或210可以向系统202和/或字体打包器212生成请求。
在步骤530,在第一设备处接收信息。该信息从第二设备响应于该请求而发送,并且定义该多个字形的该子集。该信息没有定义除该子集外的该多个字形中的剩余部分。例如,系统208和/或210可以从字体打包器212接收仅仅具有字体的系统208/210对展示该文档所需要的那些字形的.swf文件。如果文档随后被修订,则可以生成对第一请求未覆盖的任何另外字形的另一个请求。
在步骤540,使用所接收到的信息来生成电子文档的展示。该展示包括该多个字形的该子集。例如,系统208/210可以诸如在用户在其中能够作出文档改变的编辑程序中显示、打印或另外可视化电子文档226。
图6示出了用于为文档提供自定义字体的示例方法的流程图。在一些实施方式中,方法600可以例如在系统200和/或300中由执行计算机可读介质中的指令的处理器来执行。在一些实施方式中,可以执行更多或更少的步骤;作为另一个示例,可以按照另一个顺序执行一个或多个步骤。
在步骤610,在第一设备中接收第一输入。该第一输入指定自定义字体的多个字形的子集以形成电子文档的内容。例如,文档创建者可以使用前端应用214来定义诸如广告的电子文档226,以包括字体FeltTip Roman Bold的字符。
在步骤620,在第一设备中接收第二输入。该第二输入包括定义该自定义字体的该多个字形的信息。例如,创建者可以使用前端应用214来定义Felt Tip Roman Bold字体。
在步骤630,将该信息转发给第二设备,所述第二设备被配置成基于来自电子文档的接受者的请求来提供该信息。例如,自定义字体可以被上载到字体数据库204和/或字体打包器212。
在步骤640,将电子文档转发给其上未存储有该自定义字体的第三设备。第三设备可以向第二设备请求该信息。例如,系统202可以将电子文档226转发给系统208/210,其可以向字体数据库204和/或向字体打包器212请求必要的字形。
图7是通用计算机系统700的示意图。根据一个实施方式,系统700可以用于与前述计算机实现的方法中的任何一个联合描述的操作。系统700包括处理器710、存储器720、存储设备730以及输入/输出设备740。组件710、720、730和740中的每一个使用系统总线750互连。处理器710能够处理用于在系统700内执行的指令。在一个实施方式中,处理器710是单线程处理器。在另一个实施方式中,处理器710是多线程处理器。处理器710能够处理存储在存储器720中或存储设备730上的指令以在输入/输出设备740上显示用户界面的图形信息。
存储器720存储在系统700内的信息。在一些实施方式中,存储器720是计算机可读介质。在一些实施方式中,存储器720是易失性存储器单元,以及在其他实施方式中,存储器720是非易失性存储器单元。
存储设备730能够为系统700提供海量存储。在一个实施方式中,存储设备730是计算机可读介质。在各种不同的实施方式中,存储设备730可以是软盘设备、硬盘设备、光盘设备或带设备。
输入/输出设备740为系统700提供输入/输出操作。在一个实施方式中,输入/输出设备740包括键盘和/或指示设备。在另一个实施方式中,输入/输出设备740包括用于显示图形用户界面的显示单元。
所描述的特征可以以数字电子电路、或以计算机硬件、固件、软件或以它们的组合来实现。装置可以以有形地包含在信息载体中、用于可编程处理器执行的计算机程序产品来实现,所述信息载体例如机器可读存储设备;以及方法步骤可以由执行指令程序的可编程处理器执行来通过操作输入数据并且生成输出来执行所描述的实施方式的功能。所描述的特征可以以在可编程系统上可执行的一个或多个计算机程序来有利地实现,所述可编程系统包括至少一个可编程处理器,所述至少一个可编程处理器被耦接以从数据存储系统、至少一个输入设备和至少一个输出设备接收数据和指令以及向数据存储系统、至少一个输入设备和至少一个输出设备传送数据和指令。计算机程序是可以在计算机中直接或间接使用来执行某一活动或产生某一结果的指令集。计算机程序可以以任何形式的编程语言编写,包括编译或解释语言,并且其可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或适于在计算环境中使用的其他单元。
用于执行指令程序的适当处理器包括例如通用和专用微处理器两者,以及任何类型的计算机中的唯一处理器或多个处理器中的一个。通常,处理器从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器。通常,计算机还包括用于存储数据文件的一个或多个海量存储设备或可操作地耦接以与该一个或多个海量存储设备通信;这样的设备包括磁盘,诸如内部硬盘和可移动盘;磁光盘;以及光盘。适于有形地包含计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,包括例如:半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,诸如内部硬盘和可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由ASIC(专用集成电路)补充,或合并入ASIC。
为了提供与用户的交互,特征可以在具有下述的计算机上实现:用于向用户显示信息的显示设备,诸如CRT(阴极射线管)或LCD(液晶显示)监视器;以及用户通过其可以向计算机提供输入的键盘和指示设备,诸如鼠标或跟踪球。
特征可以在包括下述的计算机系统中实现:后端组件,诸如数据服务器;或中间件组件,诸如应用服务器或因特网服务器;或前端组件,诸如具有图形用户界面或因特网浏览器的客户端计算机;或它们的任何组合。系统的组件可以通过诸如通信网络的任何形式或介质的数字数据通信连接。通信网络的示例例如包括LAN、WAN以及形成因特网的计算机和网络。
计算机系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且典型地通过诸如所描述的一个网络的网络交互。客户端和服务器的关系依靠在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序产生。
已经描述了多个实施方式。然而,将理解的是,在不背离本公开的精神和范围的情况下,可以进行各种修改。因此,其他实施方式在权利要求的范围内。

Claims (8)

1.一种用于获取文档的字体的计算机实现的方法,所述方法包括:
确定在电子文档的内容中指定的第一字体的每一个字形,所述确定包括识别包括在所述第一字体中的多个字形的子集,所述子集在其上未存储有所述第一字体的第一设备上被确定;
在所述第一设备上基于所述确定来向第二设备生成请求,所述请求向所述第二设备识别所述子集;
在所述第一设备处接收从所述第二设备的字体数据库响应于所述请求发送的、并且定义所述多个字形的所述子集的第一信息,所述第一信息没有定义除所述子集外的所述多个字形中的剩余部分;
在所述第一设备上使用所述第一信息来生成所述电子文档的展示,所述展示包括所述多个字形的所述子集;
在所述展示期间从用户接收所述电子文档的修订;
确定所述修订包括所述字体的没有被所述信息指定的至少另一个字形;
向所述第二设备生成关于所述至少另一个字形的新的请求;
从所述第二设备接收定义所述至少另一个字形的另外信息;
更新所述展示以在所述电子文档中还显示所述至少另一个字形;
在所述第一设备接收第一输入,所述第一输入指定第二字体的多个字形的子集,以形成所述电子文档的内容;
在所述第一设备接收第二输入,所述第二输入包括定义所述第二字体的所述多个字形的子集的第二信息,以及
将所述第二信息转发给所述第二设备,其中,所述第二字体被上载到所述字体数据。
2.根据权利要求1所述的计算机实现的方法,其中对所述修订包括至少所述另一个字形的所述确定是响应于在接收所述修订之后检测到预确定的时间流逝而执行的。
3.根据权利要求1所述的计算机实现的方法,进一步包括:
在所述第一设备上在接收所述修订之前从第三设备接收所述电子文档。
4.根据权利要求3所述的计算机实现的方法,其中所述修订在所述第一设备上的应用程序的实例中接收,所述电子文档已在所述第三设备上使用所述应用程序的另一个实例创建。
5.根据权利要求4所述的计算机实现的方法,其中,所述应用程序在其中存储有用于请求所述第一信息的所述第二设备的地址,所述方法进一步包括:
访问所述应用程序中的所述地址以生成所述请求。
6.根据权利要求4所述的计算机实现的方法,其中,所述电子文档在其中存储有用于请求所述第一信息的所述第二设备的地址,所述方法进一步包括:
访问所述电子文档中的所述地址以生成所述请求。
7.根据权利要求1所述的计算机实现的方法,其中所述电子文档包括定向到操作所述第一设备的用户的广告,以及其中所述展示包括向所述用户显示所述广告。
8.根据权利要求1所述的计算机实现的方法,其中所述第一字体通过所述电子文档中的字体标识符来识别,以及所述多个字形的所述子集中的每一个是使用所述电子文档中的代码点来指定的。
CN201080019168.7A 2009-03-10 2010-03-10 派送字体字形 Expired - Fee Related CN102439588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510158312.XA CN104794103A (zh) 2009-03-10 2010-03-10 派送字体字形

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/401,217 2009-03-10
US12/401,217 US20100231598A1 (en) 2009-03-10 2009-03-10 Serving Font Glyphs
PCT/US2010/026759 WO2010104906A2 (en) 2009-03-10 2010-03-10 Serving font glyphs

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510158312.XA Division CN104794103A (zh) 2009-03-10 2010-03-10 派送字体字形

Publications (2)

Publication Number Publication Date
CN102439588A CN102439588A (zh) 2012-05-02
CN102439588B true CN102439588B (zh) 2015-04-22

Family

ID=42729067

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201080019168.7A Expired - Fee Related CN102439588B (zh) 2009-03-10 2010-03-10 派送字体字形
CN201510158312.XA Pending CN104794103A (zh) 2009-03-10 2010-03-10 派送字体字形

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201510158312.XA Pending CN104794103A (zh) 2009-03-10 2010-03-10 派送字体字形

Country Status (5)

Country Link
US (2) US20100231598A1 (zh)
JP (1) JP2012520511A (zh)
KR (1) KR20120001750A (zh)
CN (2) CN102439588B (zh)
WO (1) WO2010104906A2 (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9319444B2 (en) * 2009-06-22 2016-04-19 Monotype Imaging Inc. Font data streaming
US8769405B2 (en) * 2009-10-16 2014-07-01 Celartem, Inc. Reduced glyph font files
EP2367118A1 (en) * 2010-03-15 2011-09-21 GMC Software AG Method and devices for generating two-dimensional visual objects
US8615709B2 (en) 2010-04-29 2013-12-24 Monotype Imaging Inc. Initiating font subsets
US9164968B2 (en) * 2011-07-26 2015-10-20 Google Inc. Techniques for server-side determination of font subsets
US8494276B2 (en) 2011-09-23 2013-07-23 International Business Machines Corporation Tactile input recognition using best fit match
US20130215126A1 (en) * 2012-02-17 2013-08-22 Monotype Imaging Inc. Managing Font Distribution
US8988434B1 (en) 2012-04-12 2015-03-24 Google Inc. Text rendering for browsers and mobile based applications
US9838444B2 (en) * 2012-05-31 2017-12-05 Google Llc Systems and methods for dynamically providing fonts based on language settings
CN103455503B (zh) * 2012-05-31 2018-04-03 腾讯科技(深圳)有限公司 字库收集方法、网页渲染方法、装置及系统
US9817615B2 (en) 2012-12-03 2017-11-14 Monotype Imaging Inc. Network based font management for imaging devices
US9569865B2 (en) 2012-12-21 2017-02-14 Monotype Imaging Inc. Supporting color fonts
EP2943894A2 (en) 2013-01-09 2015-11-18 Monotype Imaging Inc. Advanced text editor
EP2763051B1 (en) * 2013-01-31 2019-08-14 Google LLC Serving font glyphs
EP2763050A1 (en) 2013-01-31 2014-08-06 Google, Inc. Serving font glyphs
US9317777B2 (en) 2013-10-04 2016-04-19 Monotype Imaging Inc. Analyzing font similarity for presentation
US9691169B2 (en) 2014-05-29 2017-06-27 Monotype Imaging Inc. Compact font hinting
US9940744B2 (en) * 2014-09-15 2018-04-10 Microsoft Technology Licensing, Llc Remote font management
CN104267916A (zh) * 2014-09-16 2015-01-07 珠海格力电器股份有限公司 一种信息显示方法、系统和电子设备
US20160182606A1 (en) * 2014-12-17 2016-06-23 Monotype Imaging Inc. Network Based Static Font Subset Management
JP5861229B1 (ja) * 2015-04-15 2016-02-16 株式会社システム中部 手書きフォント配信システム、手書きフォント配信方法
US10115215B2 (en) 2015-04-17 2018-10-30 Monotype Imaging Inc. Pairing fonts for presentation
US10503810B2 (en) * 2015-06-18 2019-12-10 International Business Machines Corporation Font personalization
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
US10455056B2 (en) * 2015-08-21 2019-10-22 Abobe Inc. Cloud-based storage and interchange mechanism for design elements
WO2017078252A1 (ko) * 2015-11-03 2017-05-11 주식회사 한컴플렉슬 Pdf 문서에 포함된 문자의 모양 유지 복사를 위한 전자 단말 장치 및 상기 전자 단말 장치의 pdf 문서에 포함된 문자에 대한 모양 유지 복사 방법
US20220012407A1 (en) * 2015-12-08 2022-01-13 Beth Mickley Apparatus and method for generating licensed fanciful fonts for messaging services
CN106951421A (zh) * 2016-01-07 2017-07-14 方正璞华软件(武汉)股份有限公司 一种网络字体显示系统及方法
US10228775B2 (en) * 2016-01-22 2019-03-12 Microsoft Technology Licensing, Llc Cross application digital ink repository
US10503811B2 (en) * 2016-02-29 2019-12-10 Adobe Inc. Acquisition of a font portion using a compression mechanism
US10592590B2 (en) * 2016-08-04 2020-03-17 Adobe Inc. Non-resident font preview
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
US11657602B2 (en) 2017-10-30 2023-05-23 Monotype Imaging Inc. Font identification from imagery
CN108304357B (zh) * 2018-01-31 2020-09-08 北京大学 一种基于字体流形的中文字库自动生成方法
KR102359773B1 (ko) * 2021-03-23 2022-02-28 스튜디오씨드코리아 주식회사 폰트 서브셋 생성 방법 및 그 장치
CN113867673B (zh) * 2021-09-27 2022-09-16 湖南省舟际智控电气科技有限公司 一种液晶屏立体字字体显示方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101088066A (zh) * 2004-12-23 2007-12-12 皇家飞利浦电子股份有限公司 一种配置用于播放网络节目的软件资源的方法和装置
CN101290614A (zh) * 2007-04-17 2008-10-22 株式会社Pfu 字符管理系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6388654B1 (en) * 1997-10-03 2002-05-14 Tegrity, Inc. Method and apparatus for processing, displaying and communicating images
JP2001350464A (ja) * 2000-06-07 2001-12-21 Nec Corp 文字フォント登録システム及びそれに用いる文字フォント登録方法
US20040205118A1 (en) * 2001-09-13 2004-10-14 Allen Yu Method and system for generalized localization of electronic documents
JP2004013390A (ja) * 2002-06-05 2004-01-15 Canon Inc 文書処理装置、その制御方法、及び制御プログラム
GB0413261D0 (en) * 2004-06-15 2004-07-14 Ibm Method and arrangement for front building
US7640502B2 (en) * 2004-10-01 2009-12-29 Microsoft Corporation Presentation facilitation
US20060170684A1 (en) * 2005-01-28 2006-08-03 Microsoft Corporation Font cache and meta-fonts
JP2006235947A (ja) * 2005-02-24 2006-09-07 Fujitsu Ltd ドキュメント送信プログラムおよびドキュメント送信システム
US20070024626A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Large character set handling in limited devices
US20080079730A1 (en) * 2006-09-29 2008-04-03 Microsoft Corporation Character-level font linking
JP2008165264A (ja) * 2006-12-26 2008-07-17 Dynacomware Taiwan Inc ネットワークを利用して多様なフォントを用いたアジアWebページ文書を編集するためのシステム及び方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101088066A (zh) * 2004-12-23 2007-12-12 皇家飞利浦电子股份有限公司 一种配置用于播放网络节目的软件资源的方法和装置
CN101290614A (zh) * 2007-04-17 2008-10-22 株式会社Pfu 字符管理系统

Also Published As

Publication number Publication date
US20100231598A1 (en) 2010-09-16
CN102439588A (zh) 2012-05-02
WO2010104906A2 (en) 2010-09-16
JP2012520511A (ja) 2012-09-06
US20140019856A1 (en) 2014-01-16
KR20120001750A (ko) 2012-01-04
WO2010104906A3 (en) 2011-02-24
CN104794103A (zh) 2015-07-22

Similar Documents

Publication Publication Date Title
CN102439588B (zh) 派送字体字形
CN109801347B (zh) 一种可编辑图像模板的生成方法、装置、设备和介质
US10325012B2 (en) Filtered stylesheets
US20190251143A1 (en) Web page rendering method and related device
US20120110436A1 (en) Integrated document viewer
JP2004157502A (ja) フォントの選択方法
US20190073342A1 (en) Presentation of electronic information
US9749440B2 (en) Systems and methods for hosted application marketplaces
CN102063483A (zh) 基于用户代理类型以变化格式提供字体文件
CN102148852A (zh) 字体子集的动态流式传输
US20160012551A1 (en) Apparatus and Application Server for Providing a Service to a User
CN109933751B (zh) 图文绘制方法、装置、计算机可读存储介质和计算机设备
CN111291533B (zh) 待显示句段的显示方法、装置、计算机设备和存储介质
AU2020352890B2 (en) Dynamic typesetting
Krause Introducing Bootstrap 4
WO2014118671A2 (en) Serving font glyphs
CN102193789B (zh) 一种实现可配置跳转链接的方法和设备
CN109240660B (zh) 一种广告数据的接入方法、存储介质、电子设备及系统
KR20200001342A (ko) 개체를 렌더링하는 웹 전자 문서 편집 장치 및 이의 동작 방법
CN102099806B (zh) 信息输出装置及信息输出方法
CN113656041A (zh) 数据处理方法、装置、设备及存储介质
CN114168875A (zh) 一种页面程序的生成方法、装置、计算机设备及存储介质
US10169448B2 (en) Serving font glyphs
JP2009003199A (ja) 広告出力サーバ、広告出力プログラム及び広告出力方法
KR20200001340A (ko) 드로잉 개체를 렌더링하는 웹 전자 문서 편집 장치 및 이의 동작 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150422

Termination date: 20170310