CN101800043A - 一种显示矢量字体的方法和终端 - Google Patents
一种显示矢量字体的方法和终端 Download PDFInfo
- Publication number
- CN101800043A CN101800043A CN201010105818A CN201010105818A CN101800043A CN 101800043 A CN101800043 A CN 101800043A CN 201010105818 A CN201010105818 A CN 201010105818A CN 201010105818 A CN201010105818 A CN 201010105818A CN 101800043 A CN101800043 A CN 101800043A
- Authority
- CN
- China
- Prior art keywords
- vector fonts
- positional information
- fonts
- information
- vector
- 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.)
- Pending
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种显示矢量字体的方法和终端,涉及矢量字体处理领域,显著减少了实现矢量字体显示的时间,提高了矢量字体显示的效率,节省了系统资源。本发明实施例提供的显示矢量字体的方法包括:读取预先保存的当前的矢量字体的位置信息;生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。本发明适用于需要显示矢量字体的场合。
Description
技术领域
本发明涉及矢量字体处理领域,尤其涉及一种显示矢量字体的方法和终端。
背景技术
点阵字体通常是把每一个字符都分成16×16或24×24个点,然后用每个点的虚实来表示字符的轮廓。点阵字体占用的空间资源和系统运算资源较少,通常应用在一些单片机设备和嵌入式设备上。然而,由于点阵字体本身的限制,无法实现平滑变形,例如,点阵字体不能放大,一旦放大后会出现文字边缘的锯齿等问题,点阵字体逐渐被矢量字体所取代。
相比于点阵字体,矢量字体具有任意放大而不产生变形的特点,在很多场景中必须应用矢量字体才能达到较好的用户感受。矢量字体中每一个字形是通过数学曲线来描述的,这种描述包含了字形边界上的关键点,连线的导数信息等。字体的渲染引擎通过读取这些数学矢量,然后进行一定的数学运算来进行渲染,这样可以在对矢量字体进行放大的时候保持字体边缘的光滑、美观。目前矢量字体广泛应用在各种智能设备中,如手机和计算机等。
在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:
在显示矢量字体之前,需要先生成该字体的描述信息以获取字体的宽高等信息,然后,在真正显示这个字体时需要再次生成该字体的描述信息,根据该描述信息和字体的宽高等信息,对矢量字体进行显示。由于需要两次生成相同的字体描述信息,导致实现矢量字体显示的时间过长,效率过低,且浪费了系统资源。
发明内容
为解决现有技术中存在的问题,本发明的实施例提供了一种显示矢量字体的方法和终端。
为达到上述目的,本发明的实施例采用如下技术方案:
一种显示矢量字体的方法,所述方法包括:
读取预先保存的当前的矢量字体的位置信息;
生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
一种显示矢量字体的终端,所述终端包括:
保存单元,用于保存矢量字体的位置信息;
读取单元,用于从所述保存单元中读取预先保存的当前的矢量字体的位置信息;
显示单元,用于生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述读取单元读取的当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
本发明实施例提供的技术方案,由于预先保存了矢量字体的位置信息,在进行矢量字体的显示时,无需两次重复生成相同的字体描述信息,可以快速获取到矢量字体的位置信息,以对矢量字体进行显示。本发明实施例的技术方案显著减少了实现矢量字体显示的时间,提高了矢量字体显示的效率,节省了系统资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例提供的一种显示矢量字体的方法流程示意图;
图2为本发明又一实施例提供的一种显示矢量字体的终端结构示意图;
图3为本发明又一实施例提供的又一种显示矢量字体的终端结构示意图;
图4为本发明又一实施例提供的又一种显示矢量字体的终端结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是本发明实施例中所提到的终端包括但不限于各种手机,个人数字助理(Personal Digital Assistant,PDA),电子书设备、掌上电脑、MP3,MP4等具有显示文字功能的电子设备。
本发明一个实施例提供的一种显示矢量字体的方法,如图1所示,所述方法包括:
步骤11:读取预先保存的当前的矢量字体的位置信息;
步骤12:生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
可以由终端或终端中内置的专用模块实现上述步骤11和步骤12。上述的位置信息包括但不局限于矢量字体在不同属性下的宽高位置信息、基线位置信息和偏移位置信息,所述矢量字体的属性包括字号、字体、粗体或斜体中的一种或其组合。上述当前的矢量字体是指当前需要进行显示操作的矢量字体。
进一步的,在执行矢量字体显示之前,可预先将矢量字体的位置信息保存在矢量字体信息表或者矢量字体数据库。
本发明实施例提供的技术方案,由于预先保存了矢量字体的位置信息,在进行矢量字体的显示时,无需两次重复生成相同的字体描述信息,可直接利用读取到位置信息对矢量字体进行显示。本发明实施例的技术方案显著减少了实现矢量字体显示的时间,提高了矢量字体显示的效率,节省了系统资源。
下面对本发明另一个实施例提供的显示矢量字体的方法进行详细说明,具体包括如下步骤:
步骤S1:保存矢量字体的位置信息。
在本发明实施例中,预先保存常用的矢量字体的位置信息。其中,矢量字体的位置信息为对矢量字体进行显示时所需的定位信息,可以根据需要对矢量字体的位置信息进行设置,例如,对于需要精确显示或者有特殊需要的场合,所设置的位置信息包括的内容较多、精度要求也较高;而对于显示要求较低的场合,在不影响显示效果的前提下,可以尽可能的简化位置信息所包含的内容。
本发明实施例提供的位置信息包括但不局限于,矢量字体在不同属性下的宽高位置信息、基线位置信息和偏移位置信息。该矢量字体的属性包括字号、字体、粗体或斜体中的一种或其组合。
可以通过新增一个特殊的表,如矢量字体信息表,保存矢量字体的位置信息;或者,通过新增一个特殊的矢量字体数据库,来保存上述矢量字体的位置信息。下面以采用矢量字体信息表来保存矢量字体的位置信息为例进行说明。
本发明实施例可通过多种方式生成并维护矢量字体信息表。
在一种方式中,采用静态的方式生成并维护矢量字体信息表。例如,可以在执行矢量字体显示之前,预先计算各矢量字体的位置信息并保存在矢量字体信息表,则在开始执行矢量字体显示之后,即可直接从该矢量字体信息表快速读取矢量字体的位置信息,用于矢量字体的显示;
在另一种方式中,采用动态的方式生成并维护矢量字体信息表。记录已经显示的矢量字体的位置信息,并将所述位置信息保存在矢量字体信息表中。这种方式下,对于初次进行显示的矢量字体,采用现有的流程进行显示,在该流程中能够获得该矢量字体的位置信息,在矢量字体信息表中记录该位置信息,则在后续过程,当需要再次显示该矢量字体时,即可从矢量字体信息表中快速获取到该矢量字体的位置信息,以进行显示。随着执行过显示处理的矢量字体的越来越多,矢量字体信息表中保存的位置信息也不断增多。
可以理解,能够采用与上述静态或动态生成并维护矢量字体信息表相同的方式对矢量字体数据库进行处理,在此不再赘述。
参见表1,显示了一种矢量字体信息表的结构示意图。
表1
为不同属性下的矢量字体存储不同的位置信息,其中,n表示序号。例如,矢量字体1的位置信息1表示该矢量字体在属性1下的位置信息,属性1可以表示字号14、宋体和粗体等;矢量字体1的位置信息2表示该矢量字体在属性2下的位置信息,属性1可以表示字号24、楷体和斜体等。
进一步的,当需要时,本发明实施例能够对已经保存的矢量字体的位置信息进行更新。利用更新后的矢量字体的位置信息替换矢量字体信息表中保存的旧的位置信息。
步骤S2:读取预先保存的当前的矢量字体的位置信息;
每一个矢量字体都具有一个专有的编码,利用当前矢量字体的编码和属性,从上述矢量字体信息表中读取该矢量字体的位置信息。或者,新增设一个矢量字体与位置信息的对应关系,利用当前的矢量字体查询该对应关系,得到当前的矢量字体的位置关系。
步骤S3:生成所述矢量字体的描述信息,并利用所述描述信息和所述矢量字体的位置信息,对所述矢量字体进行显示。
在对矢量字体进行显示时,首先利用当前矢量字体的编码和属性,读取相应的字库文件得到该矢量字体的基本信息,然后,基于预定算法生成该矢量字体的描述信息,且本发明实施例在获取到矢量字体的位置信息后,只需生成一次该矢量字体的描述信息。最后,利用步骤S2中得到的位置信息和当前生成的描述信息对当前的矢量字体进行显示。
本发明实施例提供的技术方案,由于预先保存了矢量字体的位置信息,在进行矢量字体的显示时,无需两次重复生成相同的字体描述信息,可直接利用读取到位置信息对矢量字体进行显示。本发明实施例的技术方案显著减少了实现矢量字体显示的时间,提高了矢量字体显示的效率,节省了系统资源,该有益效果在本发明实施例应用于拉丁语系之类的矢量字体的显示场景中时尤其显著。
本发明又一实施例还提供了一种显示矢量字体的终端,参见图2,所述终端包括:
保存单元21,用于保存矢量字体的位置信息;
读取单元22,用于从所述保存单元21中读取预先保存的当前的矢量字体的位置信息;
显示单元23,用于生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述读取单元22读取的当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
根据对位置信息的不同保存方式,所述保存单元21可以包括矢量字体信息表模块,或者包括矢量字体数据库模块,或者同时包括矢量字体信息表模块,和矢量字体数据库模块,其中,该矢量字体信息表模块,用于存储所述矢量字体的位置信息,该矢量字体数据库模块,用于存储所述矢量字体的位置信息。
进一步的,根据上述终端获取位置信息的不同方式,所述终端还可以包括静态获取单元25,或者包括动态获取单元26,或者同时包括静态获取单元25和动态获取单元26,参见图3,显示了上述终端同时具有静态获取单元25和动态获取单元26的场景。其中,所述静态获取单元25,用于预先计算各矢量字体的位置信息并将所述位置信息保存在所述保存单元中;所述动态获取单元26,用于记录已经显示的矢量字体的位置信息并将所述位置信息保存在所述保存单元中。
进一步的,上述终端还包括设置单元,用于设置所述静态获取单元25和/或动态获取单元26获取到的位置信息,所述位置信息包括矢量字体在不同属性下的宽高位置信息、基线位置信息和偏移位置信息,所述矢量字体的属性包括字号、字体、粗体或斜体中的一种或其组合
当需要时,如当矢量字体的位置信息发生变化时,参见图4,所述终端还包括更新单元24,用于更新所述保存单元21所保存的位置信息。
本发明实施例提供的技术方案,由于预先保存了矢量字体的位置信息,在进行矢量字体的显示时,无需两次重复生成相同的字体描述信息,可直接利用读取到位置信息对矢量字体进行显示。本发明实施例的技术方案显著减少了实现矢量字体显示的时间,提高了矢量字体显示的效率,节省了系统资源。
本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种显示矢量字体的方法,其特征在于,所述方法包括:
读取预先保存的当前的矢量字体的位置信息;
生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
2.根据权利要求1所述的方法,其特征在于,在所述读取预先保存的当前的矢量字体的位置信息之前,所述方法还包括:
利用矢量字体信息表或者矢量字体数据库保存所述位置信息,其中,利用下述的任一种方式或其组合获取所述矢量字体信息表或者矢量字体数据库:
在显示矢量字体之前,预先计算矢量字体的位置信息并保存在所述矢量字体信息表或者矢量字体数据库中;或者,
记录已经显示的矢量字体的位置信息,并将所述位置信息保存在矢量字体信息表或者矢量字体数据库中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
更新所述矢量字体信息表或者矢量字体数据库中的位置信息。
4.根据权利要求1至3任一项所述的方法,其特征在于,
所述位置信息包括矢量字体在不同属性下的宽高位置信息、基线位置信息和偏移位置信息,所述矢量字体的属性包括字号、字体、粗体或斜体中的一种或其组合。
5.一种显示矢量字体的终端,其特征在于,所述终端包括:
保存单元,用于保存矢量字体的位置信息;
读取单元,用于从所述保存单元中读取预先保存的当前的矢量字体的位置信息;
显示单元,用于生成所述当前的矢量字体的描述信息,并利用所述描述信息和所述读取单元读取的当前的矢量字体的位置信息,对所述当前的矢量字体进行显示。
6.根据权利要求5所述的终端,其特征在于,所述保存单元包括下述至少一种模块:
矢量字体信息表模块,用于存储所述矢量字体的位置信息;
矢量字体数据库模块,用于存储所述矢量字体的位置信息。
7.根据权利要求5所述的终端,其特征在于,所述终端还包括静态获取单元和/或动态获取单元,
所述静态获取单元,用于预先计算各矢量字体的位置信息并将所述位置信息保存在所述保存单元中;
所述动态获取单元,用于记录已经显示的矢量字体的位置信息并将所述位置信息保存在所述保存单元中。
8.根据权利要求5至7任一项所述的终端,其特征在于,所述终端还包括:
更新单元,用于更新所述保存单元所保存的位置信息。
9.根据权利要求5至7任一项所述的终端,其特征在于,所述终端还包括:
设置单元,用于设置所述静态获取单元和/或动态获取单元获取到的位置信息,所述位置信息包括矢量字体在不同属性下的宽高位置信息、基线位置信息和偏移位置信息,所述矢量字体的属性包括字号、字体、粗体或斜体中的一种或其组合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010105818A CN101800043A (zh) | 2010-02-04 | 2010-02-04 | 一种显示矢量字体的方法和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010105818A CN101800043A (zh) | 2010-02-04 | 2010-02-04 | 一种显示矢量字体的方法和终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101800043A true CN101800043A (zh) | 2010-08-11 |
Family
ID=42595692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010105818A Pending CN101800043A (zh) | 2010-02-04 | 2010-02-04 | 一种显示矢量字体的方法和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101800043A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103207911A (zh) * | 2013-04-08 | 2013-07-17 | 厦门美图网科技有限公司 | 一种基于网络请求的矢量文字生成方法 |
CN103268185A (zh) * | 2013-04-26 | 2013-08-28 | 珠海全志科技股份有限公司 | 电子书阅读器的文本显示方法及装置 |
WO2013127312A1 (zh) * | 2012-02-27 | 2013-09-06 | Wang Tao | 一种基于矢量图形播放的终端系统及其实现方法 |
CN105022758A (zh) * | 2014-04-29 | 2015-11-04 | 高德信息技术有限公司 | 一种文字纹理管理方法及设备 |
CN105549817A (zh) * | 2015-12-09 | 2016-05-04 | 广州阿里巴巴文学信息技术有限公司 | 字体包的生成方法、装置和图形的展示方法、装置 |
-
2010
- 2010-02-04 CN CN201010105818A patent/CN101800043A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013127312A1 (zh) * | 2012-02-27 | 2013-09-06 | Wang Tao | 一种基于矢量图形播放的终端系统及其实现方法 |
CN103207911A (zh) * | 2013-04-08 | 2013-07-17 | 厦门美图网科技有限公司 | 一种基于网络请求的矢量文字生成方法 |
CN103268185A (zh) * | 2013-04-26 | 2013-08-28 | 珠海全志科技股份有限公司 | 电子书阅读器的文本显示方法及装置 |
CN103268185B (zh) * | 2013-04-26 | 2016-11-23 | 珠海全志科技股份有限公司 | 电子书阅读器的文本显示方法及装置 |
CN105022758A (zh) * | 2014-04-29 | 2015-11-04 | 高德信息技术有限公司 | 一种文字纹理管理方法及设备 |
CN105022758B (zh) * | 2014-04-29 | 2019-08-09 | 高德信息技术有限公司 | 一种文字纹理管理方法及设备 |
CN105549817A (zh) * | 2015-12-09 | 2016-05-04 | 广州阿里巴巴文学信息技术有限公司 | 字体包的生成方法、装置和图形的展示方法、装置 |
CN105549817B (zh) * | 2015-12-09 | 2017-09-29 | 广州阿里巴巴文学信息技术有限公司 | 字体包的生成方法、装置和图形的展示方法、装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104598901A (zh) | 移动终端对图片文字识别并原样式排版显示的方法及系统 | |
CN103200293A (zh) | 一种导入通讯录文件过程中自动合并重名联系人的方法 | |
CN101800043A (zh) | 一种显示矢量字体的方法和终端 | |
CN101196917A (zh) | 一种共享字体的实现方法和装置 | |
CN105677328A (zh) | 一种展示信息的方法、装置及电子设备 | |
CN110139149B (zh) | 一种视频优化的方法、装置、电子设备 | |
CN102129425A (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
CN113112208A (zh) | 一种基于三维可视化模型的电力物资仓储管理方法 | |
CN106294480A (zh) | 一种文件格式转换方法、装置及试题导入系统 | |
CN110609966A (zh) | 一种页面显示方法、装置及其设备 | |
CN109858421B (zh) | 一种基于可缩放矢量图形的安卓平台笔迹回放方法及装置 | |
CN106327093A (zh) | 一种基于二维码的图书管理系统及方法 | |
CN103678261A (zh) | 一种快速显示ttf字体的方法、装置及设备 | |
CN201259670Y (zh) | 一种文本信息处理装置和设备 | |
CN102984676B (zh) | 处理消息会话的方法和终端 | |
CN104915435A (zh) | 数据查询方法和装置 | |
CN108170376A (zh) | 存储卡读和写的方法和系统 | |
CN104536947A (zh) | 版式文档的处理方法及装置 | |
CN104536674A (zh) | 一种用于在移动设备中对网页执行操作的方法和装置 | |
CN113301203B (zh) | 基于通讯录对历史信息数据进行更新的方法及装置 | |
CN115935917A (zh) | 一种可视化图表的数据处理方法、装置、设备及存储介质 | |
CN112036132B (zh) | 一种文档的页眉页脚编辑方法、装置及电子设备 | |
CN113110829B (zh) | 多ui组件库数据处理方法及装置 | |
CN104408056A (zh) | 一种数据处理方法和装置 | |
KR102300444B1 (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100811 |