当前位置: 首页 > 专利查询>奥多比公司专利>正文

使用压缩机制来获取字体部分制造技术

技术编号:16152880 阅读:66 留言:0更新日期:2017-09-06 18:17
描述使用压缩机制来获取字体部分。在某些实施例中,终端用户设备确定将被显示、但是从本地字体缺失的多个字符。终端用户设备基于与多个字符对应的多个代码点计算多个字符的压缩表示。终端用户设备向字体贮存库传输包括压缩表示的字体请求。字体请求可以被实现为统一资源定位符(URL)。诸如服务器的字体贮存库解码压缩表示以至少标识由终端用户设备编码的多个代码点。字体贮存库准备包括与多个代码点对应的字形数据的字体描述并且返回字体描述。终端用户设备产生至少包括与多个请求的字符对应的多个字形的本地字体。本地字体产生可以包括字体扩充。

【技术实现步骤摘要】
使用压缩机制来获取字体部分
本公开涉及使用压缩机制来获取字体部分。
技术介绍
因特网、尤其是万维网(WWW)或者Web使许多服务能够被跨全球提供。服务的两个示例是通信和商务。为具有多个不同教育水平、审美偏好、语言能力等的web用户和在这些web用户之间提供这些和其他服务。因此,Web已经被适配为适应来自不同国家或者在不同文化中生活的人们的广泛多样性。Web的一个适应性是使用许多不同字体的能力。字体是表示数字字样的实例的数字文件或者代码。字样的示例包括Courier、Helvetica、Literata、TimesNewRoman和Bookerly。字体的示例是表示字样的样式、诸如粗体Helvetica的文件(例如“Helvetica-Bold.otf”)。每个字体体现唯一样式并且经常是为一个或者少数有关语言而设计的。给定电子字体或者字体系列可以具有用于不同点大小、诸如粗体或者斜体的各种效果等的选项。使用选择的字体,计算应用可以使字符被呈现在电子设备的显示屏幕上作为与字符分别对应的字形。例如web浏览器可以使用本地存储的字体在智能电话的屏幕上显示来自web页面的文本。为了适应全世界人们的语言和文化的多样性,已经创建许多不同字体。现有字体的多样化使不同语言和文化的人们以他们自己的方式享用Web。为了实现这一点,一个字体可以明显地不同于另一字体。另外,字体的定义可以不仅包括对如何形成个别字符的说明,而且包括对每个字符如何与其他字符有关或者交互的说明。字体定义因此可能很大并且消耗大量数据,这带来对电子设备的存储和传输带宽能力二者的需求。因此,个别电子设备仅能存储有限数目的字体定义。此外,向终端用户设备传达字体定义以使字符能够使用字体来显示引起使终端用户心烦的可感知时间延迟。另外,有了诸如与许多蜂窝服务计划的计量连接,财务约束可能也阻碍下载不同字体、因此阻碍使用这些字体。
技术实现思路
描述使用压缩机制来获取字体部分。终端用户设备可以遇到文本内容,该文本内容具有指定的字体的在终端用户本地不存在的多个字符。每个个别字符具有可视地可辨认形式,该可视地可辨认形式向查看者示意与字符对应的字形的含义。字符可以例如包括字母表的字母、象形文字、标点、表情符、文本单位或者可以使用计算设备来编码为文本的任何其他人类可读或者可解释形式。对照而言,字形是如经由字体供应的编码的字符的具体表现或者图形表示。取代获得指定的字体的全部,终端用户设备对于字体请求使用压缩机制来获取字体的一部分以节省时间和减少传输带宽。终端用户设备向字体贮存库发送具有枚举缺失字符的压缩表示的字体请求。作为响应,字体贮存库返回用于缺失字符的字体描述,该字体描述包括描述与请求的字符对应的字形的数据。如果没有指定的字体的一部分先前存在于终端用户设备,则用于对应字形的数据被用于建立用于指定的字体的新本地字体。然而,如果指定的字体的某个部分已经存在于终端用户设备,则添加用于对应字形的数据以便扩充现有本地字体。更具体地,在用于终端用户设备的某些示例实施例中,字体实例化模块确定多个字符,这些字符形成用于特定字体的字体定义的一部分并且将用于渲染对应字形。字体实例化模块查明与多个字符分别对应的多个代码点、诸如Unicode代码点值。基于多个代码点计算多个字符的压缩表示。字体实例化模块可以例如使用就包含而言无损的一个或者多个散列化函数来计算压缩表示。因此,解码压缩表示可以在字体贮存库产生误报(falsepositive),但是不允许漏报(falsenegative)。换而言之,终端用户设备打算请求的如由代码点表示的每个字符响应于压缩表示以对应字形数据的形式由字体贮存库返回。然而,也可以返回用于附加的未打算的字符的字形数据。压缩表示可以被实施为例如概率数据结构、诸如Bloom过滤器。终端用户设备向字体贮存库传达包括压缩表示的字体请求。字体请求可以被实施为例如使压缩表示嵌入在其中的URL。响应于传输字体请求,终端用户设备从字体贮存库接收与压缩表示对应的字体描述。在终端用户设备处的字体实例化模块使用字体描述以产生包括至少用于请求的字符的字形数据的本地字体。字体描述可以用于建立具有完整字体定义的子集的新本地字体,或者字体描述可以用于通过根据作为字体描述的一部分而接收的扩充指令向现有本地字体添加字形数据来扩充现有本地字体。在用于服务器设备的某些示例实施例中,服务器设备从终端用户设备接收与对于特定字体定义正在被请求的多个字符对应的压缩表示。字体实例化模块解码压缩表示以标识多个代码点。例如字体实例化模块可以向字体定义中的代码点集合的每个代码点应用编码过程并且确定编码结果是否与压缩表示一致。如果字符的对应代码点的编码结果匹配在压缩表示中包括的字段,则字符视为被请求。虽然视为被请求的每个字符或者代码点可能实际上没有被终端用户设备打算请求,但是用于具有匹配编码结果的每个字符的每个分析的代码点应当被视为如此。换而言之,即使也返回用于一些附加的、未请求的代码点的字形数据,服务器设备仍然将返回与看来实际上被请求的每个代码点对应的字形数据。服务器设备的字体实例化模块查明与具有匹配编码结果的多个代码点对应的多个字符。字体模块实例化模块访问字体定义以提取用于多个查明的字符的多个字体属性。例如可以提取字形的矢量表示、在字形之间的恰当间距或者字体定义中的字形顺序作为字体属性。字体实例化模块基于多个提取的字体属性准备与压缩表示对应的字体描述。字体描述包括使终端用户设备能够渲染多个字符的、作为在终端用户设备处的本地字体的一部分的字形数据。在字体扩充场景中,字体描述也可以包括用于向现有本地字体中注入附加字形以维持总体字体可用性的至少一个扩充指令。在准备字体描述之后,服务器设备向终端用户设备传输字体描述。这一
技术实现思路
以简化的形式介绍以下在具体实施方式中进一步描述的概念的选择。这样,这一
技术实现思路
未旨在于标识要求保护的主题的实质特征、也未旨在于在确定要求保护的主题的范围时用作辅助。附图说明参考附图描述具体实施方式。在各图中,参考标号的一个或两个最左数字标识该参考标号在其中首次出现的图。在描述和各图中在不同实例中使用相同参考标号可以指示相似或者相同项目。在各图中表示的项目可以指示一个或者多个项目,因此可以在描述中可互换地指代项目的单数或者复数形式。图1图示用于示例实施例的环境,这些实施例可操作用于采用这里描述的涉及使用压缩机制来获取字体部分的技术。图2图示拥有具有示例应用的终端用户设备的显示场景,该应用以不同字体渲染字符作为对应字形。图3描绘其中终端用户设备能够响应于字体请求从服务器设备获取字体的一部分的示例场景。图4图示由终端用户设备用于生成字体请求的示例方式。图5图示由服务器设备用于生成字体描述以对字体请求做出响应的示例方式。图6描绘其中终端用户设备能够在字体扩充情形中从服务器设备获取字体的一部分的示例场景。图7是图示根据一个或者多个示例实施例的用于终端用户设备的示例程序的流程图。图8是图示根据一个或者多个示例实施例的用于服务器设备的示例程序的流程图。图9图示包括两个示例设备的各种部件的示例系统,这些设备可以被采用于使用压缩机制来获取字体部分的一个或者多个实施例。具体实施方式概述网站创建者、诸如web设计者和web开本文档来自技高网
...
使用压缩机制来获取字体部分

【技术保护点】
在数字媒体环境中操作的至少一种计算设备,所述计算设备用于使得能够使用压缩机制来获取实时指定的字体部分,所述压缩机制支持枚举的字符的无损标识,所述计算设备被配置为执行操作,所述操作包括:确定包括字体定义的一部分的多个字符;查明与所述多个字符分别对应的多个代码点;基于所述多个代码点来计算至少所述多个字符的压缩表示;向字体贮存库传达包括所述压缩表示的字体请求;从所述字体贮存库接收与所述压缩表示对应的字体描述;以及使用所述字体描述来产生包括与所述多个字符对应的多个字形的本地字体,所述本地字体包括所述字体定义的版本。

【技术特征摘要】
2016.02.29 US 15/056,4701.在数字媒体环境中操作的至少一种计算设备,所述计算设备用于使得能够使用压缩机制来获取实时指定的字体部分,所述压缩机制支持枚举的字符的无损标识,所述计算设备被配置为执行操作,所述操作包括:确定包括字体定义的一部分的多个字符;查明与所述多个字符分别对应的多个代码点;基于所述多个代码点来计算至少所述多个字符的压缩表示;向字体贮存库传达包括所述压缩表示的字体请求;从所述字体贮存库接收与所述压缩表示对应的字体描述;以及使用所述字体描述来产生包括与所述多个字符对应的多个字形的本地字体,所述本地字体包括所述字体定义的版本。2.根据权利要求1所述的计算设备,其中所述确定包括检测包括所述多个字符的用户输入。3.根据权利要求1所述的计算设备,其中所述多个代码点分别包括多个Unicode代码点值。4.根据权利要求1所述的计算设备,其中:所述字体贮存库包括web服务器;所述字体请求包括统一资源定位符URL;以及所述传达包括:在所述URL中嵌入所述压缩表示;以及向所述web服务器传输包括所述压缩表示的所述URL。5.根据权利要求1所述的计算设备,其中所述产生包括将所述本地字体建立为包括所述多个字形。6.根据权利要求1所述的计算设备,其中所述产生包括通过向所述本地字体添加所述多个字形来扩充所述本地字体。7.根据权利要求6所述的计算设备,其中:所述计算设备被配置为执行操作,所述操作还包括在所述扩充之前确定所述本地字体的状态,所述状态表示所述本地字体的当前内容;以及所述传达包括向所述字体贮存库传达所述本地字体的所述状态。8.根据权利要求7所述的计算设备,其中:所述字体描述包括扩充指令;以及所述扩充包括:基于所述扩充指令来向所述本地字体中注入所述多个字形以产生用于所述本地字体的更新的字形顺序;以及根据所述更新的字形顺序来对所述本地字体的所述字形重新编号。9.根据权利要求1所述的计算设备,其中所述计算设备被配置为执行操作,所述操作还包括在显示屏幕上使用所述本地字体来渲染所述多个字形中的至少一个字形。10.根据权利要求1所述的计算设备,其中所述压缩表示包括概率数据结构。11.根据权利要求10所述的计算设备,其中所述计算所述压缩表示包括向所述多个代码点应用Bloom过滤器技术以产生表示所述多个字符的所述概率数据结构。12.根据权利要求1所述的计算设备,其中所述计算所述压缩表示包括对所述多个代码点中的每个代码点执行至少一个散列化操作,使得在所述压缩表示被解码以标识所述多个代码点的情况下,防止漏报,但是允许误报。13.在数字媒体环境中操作的至少一种计算设备,所述计算设备用于使得能够使用压缩机制来获取实时指定的字体部分,所述压缩机制支持枚举的字符的无损标识,所述计算设备被配置为执行操作,所述操作包括:从终端用户设备接收与包括字体定义的一部分...

【专利技术属性】
技术研发人员:G·A·卡普兰B·斯坦
申请(专利权)人:奥多比公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1