一种字体加载方法及装置的制造方法

文档序号:10612775阅读:417来源:国知局
一种字体加载方法及装置的制造方法
【专利摘要】本发明实施例提供一种字体加载方法及装置,涉及计算机技术领域,主要目的在于提高文字字体的加载速度,提高用户查看文字信息的感官体验。本发明实施例所采用的技术方案是:获取展示文字的字体标识与字形标识;根据所述字体标识与所述字形标识查找字形库中对应的字形,所述字形库中记录有不同字体的字形信息;加载所述字形显示所述展示文字。本发明主要用于加载文字信息。
【专利说明】
一种字体加载方法及装置
技术领域
[0001]本发明实施例涉及计算机技术领域,尤其涉及一种字体加载方法及装置。【背景技术】
[0002]随着互联网的普及,获取网络信息的渠道越来越多,其中,最主要的还是通过浏览器来获取各种的网络信息,这些信息的形式可以是文字、图片或者是视频。而文字是现有网络信息中最主要的表现形式。
[0003]在以文字进行表达的信息中,为了突出个性,越来越多的自定义字体的出现,使得要查看个性化文字,首先要下载该字体的字体包,根据所要显示的文字信息解析字体包,查找该字体包中所对应文字的字形,最后在媒体中加载该字形。可见,要显示一个文字至少需要解析该文字的字体包,再查找对应的字形进行显示。而对于中文字体包来说,任何一种的字体包中都至少包含数万个字形信息,因此,中文字体包文件本身就较大,再加之每显示一个文字都需要解析一次该文字所要显示的字体包。所以在显示大篇幅文字信息时,加载字体所需的时间都会比较长。
【发明内容】

[0004]本发明实施例提供一种字体加载方法及装置,主要目的在于提高文字字体的加载速度,提高用户查看文字信息的感官体验。
[0005]为达到上述目的,本发明主要提供如下技术方案:
[0006] —方面,本发明实施例提供一种字体加载方法,该方法包括:
[0007]获取展示文字的字体标识与字形标识;
[0008]根据所述字体标识与所述字形标识查找字形库中对应的字形,所述字形库中记录有不同字体的字形信息;
[0009]加载所述字形显示所述展示文字。
[0010]可选的,根据所述字体标识与所述字形标识查找字形库中对应的字形包括:
[0011]判断所述字形库中是否存在符合所述字体标识的字形信息;
[0012]若存在,则在所述字形信息中提取符合所述字形标识的字形;
[0013]若不存在,则添加具有所述字体标识的字形信息到所述字形库中。
[0014]可选的,根据所述字体标识与所述字形标识查找字形库中对应的字形包括:
[0015]查找所述字形库中符合所述字形标识的字形信息;
[0016]判断所述字形信息中是否存在符合所述字体标识的字形信息;
[0017]若存在,则提取具有所述字体标识的字形信息;
[0018]若不存在,则添加具有所述字体标识的字形信息到所述字形库中。
[0019]可选的,添加具有所述字体标识的字形信息到所述字形库中包括:
[0020]获取具有所述字体标识的字体包;[0021 ]解析所述字体包,得到具有所述字体标识的字形信息;
[0022]将所述字形信息添加到所述字形库中。
[0023]可选的,将所述字形信息添加到所述字形库中包括:
[0024]为所述字形信息标注对应的字体标识和字形标识;
[0025]将具有字体标识和字形标识的字形信息保存到所述字形库中。[〇〇26]可选的,加载所述字形显示所述展示文字包括:
[0027]获取所述展示文字的属性信息,所述属性信息包括:文字大小、字体颜色以及字型信息;[〇〇28]根据所述属性信息显示所述字形。
[0029]另一方面,本发明实施例提供一种字体加载装置,该装置包括:
[0030]获取单元,用于获取展示文字的字体标识与字形标识;
[0031]查找单元,用于根据所述获取单元获取的字体标识与字形标识查找字形库中对应的字形,所述字形库中记录有不同字体的字形信息;[〇〇32]显示单元,用于加载所述查找单元查找到的字形显示所述展示文字。[〇〇33]可选的,所述查找单元包括:
[0034]第一判断模块,用于判断所述字形库中是否存在符合所述字体标识的字形信息;
[0035]第一提取模块,用于当所述第一判断模块判断存在时,在所述字形信息中提取符合所述字形标识的字形;
[0036]添加模块,用于当所述第一判断模块判断不存在时,添加具有所述字体标识的字形信息到所述字形库中。[〇〇37]可选的,所述查找单元包括:
[0038]查找模块,用于查找所述字形库中符合所述字形标识的字形信息;
[0039]第二判断模块,用于判断所述字形信息中是否存在符合所述字体标识的字形信息;
[0040]第二提取模块,用于当所述第二判断模块判断存在时,提取具有所述字体标识的字形信息;[0041 ]所述添加模块还用于,当所述第二判断模块判断不存在时,添加具有所述字体标识的字形信息到所述字形库中。[〇〇42]可选的,所述添加模块包括:
[0043]获取子模块,用于获取具有所述字体标识的字体包;
[0044]解析子模块,用于解析所述获取子模块获取的字体包,得到具有所述字体标识的字形信息;
[0045]添加子模块,用于将所述解析子模块得到的字形信息添加到所述字形库中。
[0046]可选的,所述添加子模块还用于,为所述字形信息标注对应的字体标识和字形标识,并将具有字体标识和字形标识的字形信息保存到所述字形库中。[〇〇47] 可选的,所述显示单元包括:
[0048]获取模块,用于获取所述展示文字的属性信息,所述属性信息包括:文字大小、字体颜色以及字型信息;[〇〇49]显示模块,用于根据所述获取模块获取的属性信息显示所述字形。
[0050]本发明提供的一种字体加载方法及装置,通过获取所要展示文字的字体标识与字形标识,直接在本地的字形库中进行匹配,若能够匹配成功,就提取对应的字形并进行加载显示。而如果匹配不成功则需要加载对应字体的字形信息到本地字形库中。与现有的文字加载方式相比较,本发明所采用的加载方式,在文字加载过程中不需要逐字地解析字体包, 而是直接获取字形库中对应的字形,对于陌生字体,也只需要获取陌生字体包并进行一次解析就可以将对应的字形信息加载到本地的字形库中,通过所设置字形库,节省了解析字体包的处理时间,从而提高字体加载的整体速度,优化用户查看文字信息的感官体验。【附图说明】
[0051]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0052]图1为本发明实施例提供的一种字体加载方法流程图;
[0053]图2为本发明实施例提供的另一种字体加载方法流程图;
[0054]图3为本发明实施例提供的一种字体加载装置的结构组成框图;
[0055]图4为本发明实施例提供的另一种字体加载装置的结构组成框图。【具体实施方式】
[0056]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0057]本发明实施例提供了一种字体加载方法,如图1所示,该方法应用于不同字体的文字显示,具体步骤包括:
[0058]101、获取展示文字的字体标识与字形标识。[〇〇59]本发明实施例的实现基于计算机的字符显示原理,通过单色点阵LCD的数据组成方式来显示文字。不论是字母、汉字、或是图形符号,不同的字体都是通过字形的集合组成的,其中,一个文字的字形通过字模中的点阵显示的。同一个文字通过不同字体的显示,会有不同字形的显示形式,尤其对于中文汉字,字体的种类更加多样。例如,汉字“我”,宋体字形的“我”,黑体字形的“我”,隶书字形的“我”,可见,每种不同的字体的字形都有所不同。因此,通过制作一组文字的自定义字形的集合就可以形成一个自定义的字体包。
[0060]在通过数据信息展示文字时,首先要从所展示文字的数据信息中获取该文字的字体标识和字形标识。其中,字体标识用于确认该文字所使用的是何种字体,而字形标识用于确认该文字的字形。一般的,一个中文字体包中会包含有3到6万个不同汉字的字形信息。在显示一个汉字时,通过识别文字信息中的字体标识与字形标识,就可以确定在显示该文字是选用哪一个中文字体包,并获取该字体中的哪一个中文字形。
[0061]102、根据字体标识与字形标识查找字形库中对应的字形。
[0062]现有的显示方式中,是通过字体标识与字形标识在字体库中查找符合字体标识的字体包,解析该字体包得到字形信息,再通过字形标识提取对应的字形进行显示。而本发明实施例则是创建字形库,将所有的字体包逐一地进行解析得到的字形信息收录到字形库中,通过字体标识与字形标识的组合直接在字形库中查找对应的字形。其中,字形库的每一条字形信息在收录到字形库中时,都不会标记有对应的字体标识与字形标识,以便于对应查找和提取操作。也就是说,字形库的内容是根据字体标识与字形标识进行编码后存储到字形库中的,可以是一个具有二维坐标的数据表格,每一格中存储有一个字形,而该字形的坐标就是由字体标识与字形标识所确定的。
[0063]103、加载所述字形显示所述展示文字。
[0064]根据由字形库中提取出的字形,再配合该展示文字的其他属性信息,如文字的大小,字体的颜色以及具体的字型信息(包括,加粗、斜体、下划线等),就能够将该文字完整地展示在智能终端的显示设备中。
[0065]结合上述的实现方式可以看出,本发明实施例所采用的一种字体加载方法,通过获取所要展示文字的字体标识与字形标识,直接在本地的字形库中进行匹配,若能够匹配成功,就提取对应的字形并进行加载显示。而如果匹配不成功则需要加载对应字体的字形信息到本地字形库中。与现有的文字加载方式相比较,本发明实施例所采用的加载方式,在文字加载过程中不需要逐字地解析字体包,而是直接获取字形库中对应的字形,对于陌生字体,也只需要获取陌生字体包并进行一次解析就可以将对应的字形信息加载到本地的字形库中,通过所设置字形库,节省了解析字体包的处理时间,从而提高字体加载的整体速度,优化用户查看文字信息的感官体验。
[0066]为了更加详细地说明本发明实施例所提出的一种字体加载方法,本发明实施例将对上述的步骤进行具体说明,如图2所示,该方法所包括的具体步骤为:
[0067]201、获取展示文字的字体标识与字形标识。
[0068]在获取展示文字的字体标识与字形标识之前,应在显示系统中创建一个字形库, 该字形库中的字形信息来源于本地字体包,将本地字体包解析得到的字形信息逐一录入到字形库中,该字形信息包括有字形、字体标识以及字形标识。
[0069]获取展示文字的字体标识与字形标识,是指在要展示的文字信息中提取该文字的字体标识与字形标识。其中,文字信息所包含的内容除了字体标识与字形标识外,还包括有该展示文字的属性信息,如文字位置、大小、字体颜色以及字型信息等,通过这些属性信息, 就可以确定文字在显示设备中的具体展示状态。
[0070]202、根据字体标识与字形标识查找字形库中对应的字形。[0071 ]本步骤在根据字体标识与字形标识查找字形时,提供两种查找方式:
[0072]—种是先根据字体标识在字形库中查找是否存该字体,若存在,则进一步根据字形标识查找对应的字形,具体的,在字形库中遍历字形信息,筛选具有该字体标识的字形信息,再根据字形标识逐一比对所筛选出的字形信息,找出对应的字形。若没有筛选出符合字体标识的字形信息或者没有找到对应的字形时,说明本地的字形库中缺少该字体的字形信息或者是该字体的字形信息不完整,需要执行步骤203的操作。
[0073]另一种是先根据字形标识在字形库中查找符合的字形信息,若存在,则再根据字体标识进一步查找符合该字体标识的字形,具体的,先遍历字形库中的字形信息,筛选出具有该字形标识的字形信息,再根据字体标识逐一判断筛选出的字形信息是否具有相同的字体标识,若存在则提取该字形信息中的字形。而如果没有筛选出符合字形标识的字形信息,或者是没有查找出具有相同字体标识的字形信息时,说明本地的字形库中缺少该字形的字形信息或者是缺少该字体标识的字形信息,此时,同样需要执行步骤203的操作。
[0074]以上的两种查找方式可根据实际情况具体选择采用何种查找方式。其目的在于通过直接查找字形来提高文字字体的加载速度。
[0075]203、在字形库中没有对应的字形时,添加具有字体标识的字形信息到字形库中。
[0076]根据步骤202的描述,不论是找不多对应的字体标识或者是查不到对应的字形标识,都无法在字形库中查找到对应的字形,此时,就需要向字形库中添加具有该提标识的字形信息。具体操作包括:首先根据该字体标识获取相应的字体包,可以在本地查找,也可以通过网络下载;当获取到具有该字体标识的字体包时,直接解析该字体包中所包含的字形信息,再将得到的字形信息添加到字形库中,在添加时,每一条字形信息将被标记相应的字体标识与字形标识。
[0077]为了保证所添加的字体包中含有所需的字形,还可以在解析出字体包中的字形信息后,先查找这些字形信息中是否包括所需的字形,即判断该字形信息是否与字形标识所匹配,若不含有所需的字形,则删除该字体包,以及解析出的字形信息,重新获取新的字体包。[〇〇78]204、加载所述字形显示所述展示文字。
[0079]无论是直接查找到对应的字形,或者是在扩充了字形库后才查找到相应的字形之后,系统将从字形库中提取出该字形。同时,获取展示文字的属性信息,将所提取的字形配合获取的文字属性信息进行加载显示在智能终端的显示设备中。例如,在字形库中提取出所要显示的字形“我”后,还需要确认该字所显示的字号,是否加粗,是否采用斜体显示,字体的颜色是否为黑色,是否需要加下划线,是否存在超链接等等信息,在确认了这些信息后才能够完整、正确的显示“我”字。
[0080]进一步的,作为对上述方法的实现,本发明实施例提供了一种字体加载装置,如图 3所示,该装置包括:
[0081]获取单元31,用于获取展示文字的字体标识与字形标识;
[0082]查找单元32,用于根据所述获取单元31获取的字体标识与字形标识查找字形库中对应的字形,所述字形库中记录有不同字体的字形信息;[〇〇83]显示单元33,用于加载所述查找单元32查找到的字形显示所述展示文字。
[0084]进一步的,如图4所示,所述查找单元32包括:
[0085]第一判断模块321,用于判断所述字形库中是否存在符合所述字体标识的字形信息;
[0086]第一提取模块322,用于当所述第一判断模块321判断存在时,在所述字形信息中提取符合所述字形标识的字形;
[0087]添加模块323,用于当所述第一判断模块321判断不存在时,添加具有所述字体标识的字形信息到所述字形库中。
[0088]进一步的,如图4所示,所述查找单元包括:
[0089]查找模块,用于查找所述字形库中符合所述字形标识的字形信息;
[0090]第二判断模块324,用于判断所述字形信息中是否存在符合所述字体标识的字形信息;[0091 ]第二提取模块325,用于当所述第二判断模块324判断存在时,提取具有所述字体标识的字形信息;
[0092]所述添加模块323还用于,当所述第二判断模块324判断不存在时,添加具有所述字体标识的字形信息到所述字形库中。
[0093]进一步的,如图4所示,所述添加模块323包括:[〇〇94]获取子模块3231,用于获取具有所述字体标识的字体包;
[0095]解析子模块3232,用于解析所述获取子模块3231获取的字体包,得到具有所述字体标识的字形信息;[〇〇96]添加子模块3233,用于将所述解析子模块3232得到的字形信息添加到所述字形库中。
[0097]进一步的,所述添加子模块3233还用于,为所述字形信息标注对应的字体标识和字形标识,并将具有字体标识和字形标识的字形信息保存到所述字形库中。[〇〇98] 进一步的,如图4所示,所述显示单元33包括:[〇〇99]获取模块331,用于获取所述展示文字的属性信息,所述属性信息包括:文字大小、 字体颜色以及字型信息;
[0100]显示模块332,用于根据所述获取模块331获取的属性信息显示所述字形。
[0101]综上所述,本发明实施例所采用的一种字体加载方法及装置,通过获取所要展示文字的字体标识与字形标识,直接在本地的字形库中进行匹配,若能够匹配成功,就提取对应的字形并进行加载显示。而如果匹配不成功则需要加载对应字体的字形信息到本地字形库中。与现有的文字加载方式相比较,本发明实施例所采用的加载方式,在文字加载过程中不需要逐字地解析字体包,而是直接获取字形库中对应的字形,对于陌生字体,也只需要获取陌生字体包并进行一次解析就可以将对应的字形信息加载到本地的字形库中,通过所设置字形库,节省了解析字体包的处理时间,从而提高字体加载的整体速度,优化用户查看文字信息的感官体验。
[0102]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0103]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。[〇1〇4]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种字体加载方法,其特征在于,所述方法包括:获取展示文字的字体标识与字形标识;根据所述字体标识与所述字形标识查找字形库中对应的字形,所述字形库中记录有不 同字体的字形信息;加载所述字形显示所述展示文字。2.根据权利要求1所述的方法,其特征在于,根据所述字体标识与所述字形标识查找字 形库中对应的字形包括:判断所述字形库中是否存在符合所述字体标识的字形信息;若存在,则在所述字形信息中提取符合所述字形标识的字形;若不存在,则添加具有所述字体标识的字形信息到所述字形库中。3.根据权利要求1所述的方法,其特征在于,根据所述字体标识与所述字形标识查找字 形库中对应的字形包括:查找所述字形库中符合所述字形标识的字形信息;判断所述字形信息中是否存在符合所述字体标识的字形信息;若存在,则提取具有所述字体标识的字形信息;若不存在,则添加具有所述字体标识的字形信息到所述字形库中。4.根据权利要求2或3所述的方法,其特征在于,添加具有所述字体标识的字形信息到 所述字形库中包括:获取具有所述字体标识的字体包;解析所述字体包,得到具有所述字体标识的字形信息;将所述字形信息添加到所述字形库中。5.根据权利要求4所述的方法,其特征在于,将所述字形信息添加到所述字形库中包 括:为所述字形信息标注对应的字体标识和字形标识;将具有字体标识和字形标识的字形信息保存到所述字形库中。6.根据权利要求1所述的方法,其特征在于,加载所述字形显示所述展示文字包括:获取所述展示文字的属性信息,所述属性信息包括:文字大小、字体颜色以及字型信 息;根据所述属性信息显示所述字形。7.—种字体加载装置,其特征在于,所述装置包括:获取单元,用于获取展示文字的字体标识与字形标识;查找单元,用于根据所述获取单元获取的字体标识与字形标识查找字形库中对应的字 形,所述字形库中记录有不同字体的字形信息;显示单元,用于加载所述查找单元查找到的字形显示所述展示文字。8.根据权利要求7所述的装置,其特征在于,所述查找单元包括:第一判断模块,用于判断所述字形库中是否存在符合所述字体标识的字形信息;第一提取模块,用于当所述第一判断模块判断存在时,在所述字形信息中提取符合所 述字形标识的字形;添加模块,用于当所述第一判断模块判断不存在时,添加具有所述字体标识的字形信息到所述字形库中。9.根据权利要求8所述的装置,其特征在于,所述查找单元包括:查找模块,用于查找所述字形库中符合所述字形标识的字形信息;第二判断模块,用于判断所述字形信息中是否存在符合所述字体标识的字形信息; 第二提取模块,用于当所述第二判断模块判断存在时,提取具有所述字体标识的字形 信息;所述添加模块还用于,当所述第二判断模块判断不存在时,添加具有所述字体标识的 字形信息到所述字形库中。10.根据权利要求8或9所述的装置,其特征在于,所述添加模块包括:获取子模块,用于获取具有所述字体标识的字体包;解析子模块,用于解析所述获取子模块获取的字体包,得到具有所述字体标识的字形 信息;添加子模块,用于将所述解析子模块得到的字形信息添加到所述字形库中。
【文档编号】G06F17/21GK105975448SQ201610290788
【公开日】2016年9月28日
【申请日】2016年5月4日
【发明人】杨文海
【申请人】北京华熙动博网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1