文本处理方法、装置、电子设备和计算机可读存储介质制造方法及图纸

技术编号:34895973 阅读:20 留言:0更新日期:2022-09-10 13:55
本申请提出一种文本处理方法、装置、电子设备和计算机可读存储介质,技术方案如下:基于目标文本的字体,确定对应的字体文件解析数据;在字体文件解析数据中,读取目标文本的字形信息;基于目标文本的字形信息,生成第一字体文件;基于第一字体文件显示目标文本。采用本申请实施例,可以提升文本处理速度,且节约内存资源。内存资源。内存资源。

【技术实现步骤摘要】
文本处理方法、装置、电子设备和计算机可读存储介质


[0001]本申请涉及计算机
,尤其涉及一种文本处理方法、装置、电子设备和计算机可读存储介质。

技术介绍

[0002]在Logo(图形标识)设计、海报设计等图像处理场景中,经常需要在设计的图像中添加一些文本,并且往往使用多种字体呈现这些文本,以丰富图像的设计效果。
[0003]在图像或者其他文件中显示文本,需要用到字体文件,不同的字体对应不同的字体文件,一般来说,一个字体文件中包含了采用对应的字体的众多文字的字形信息。图像处理场景中需要用到多种字体,因此需要加载的字体文件也较多,存在加载缓慢、内存开销大等问题。

技术实现思路

[0004]本申请实施例提供一种文本处理方法、装置、电子设备和计算机可读存储介质,以解决相关技术存在的问题,技术方案如下:
[0005]第一方面,本申请实施例提供了一种文本处理方法,包括:
[0006]基于目标文本的字体,确定对应的字体文件解析数据;
[0007]在字体文件解析数据中,读取目标文本的字形信息;
[0008]基于目标文本的字形信息,生成第一字体文件;
[0009]基于第一字体文件显示目标文本。
[0010]第二方面,本申请实施例提供了一种文本处理装置,包括:
[0011]数据确定单元,用于基于目标文本的字体,确定对应的字体文件解析数据;
[0012]字形读取单元,用于在字体文件解析数据中,读取目标文本的字形信息;
[0013]文件生成单元,用于基于目标文本的字形信息,生成第一字体文件;
[0014]显示单元,用于基于第一字体文件显示目标文本。
[0015]第三方面,本申请实施例提供一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器在执行计算机程序时实现本申请任一实施例提供的方法。
[0016]第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请任一实施例提供的方法。
[0017]根据本申请实施例的方案,可以预先存储对应于各种字体的字体文件解析数据,在需要以某种字体显示目标文本时,基于该字体,确定对应的字体文件解析数据。再从字体文件解析数据中读取目标文本的字形信息,基于该字形信息生成第一字体文件。由于该第一字体文件是基于目标文本的字形信息生成的,数据量较少,因此,基于该字体文件显示目标文本,处理速度较快,且节约内存资源。
[0018]上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的
方面、实施方式和特征将会是容易明白的。
附图说明
[0019]在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
[0020]图1是本申请实施例的文本处理方法的一个应用场景的示意图;
[0021]图2是根据本申请一实施例的文本处理方法的流程图;
[0022]图3是本申请实施例中ttf文件的结构的示意图;
[0023]图4是本申请实施例中ttf文件中的数据域cmap的示意图;
[0024]图5是本申请实施例中ttf文件中的数据域glyf的示意图;
[0025]图6是根据本申请一实施例的文本处理装置的结构框图;
[0026]图7是用于实现本申请实施例的文本处理方法的电子设备的结构框图。
具体实施方式
[0027]在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
[0028]为便于理解本申请实施例的技术方案,以下对本申请实施例的相关技术进行说明,以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。
[0029]相关技术中,提取文本的字形信息以显示文本的方式一般是从磁盘文件中的字库中直接读取字体文件,例如常用的ttf(TrueType Font,TrueType字体)文件。基于设定的代码直接从字体文件中提取字形信息。但此代码每次都会从磁盘文件读取完整的字体文件,每次提取字形信息都是一次磁盘IO(Input/Output,输入输出),提取速度缓慢。
[0030]在读取字体文件后,将字体文件缓存在内存中,这样可以避免每次提取信息都进行磁盘IO,可以大幅提升速度。这种方式在使用的字体类型不多时,能够具有良好的性能表现。然而,在一些场景中,需要用到的字体类型较多,因此,需要加载的字体文件也较多,需要耗费大量的内存资源。特别在分布式系统中,由于每个机器都可能在内存中缓存数据,因此,内存资源尤为重要,因字形信息提取而导致大量内存开销并不是合适的方案。
[0031]本申请实施例的技术方案,主要为了解决上述技术问题中的至少一个。图1示出了本申请实施例的一个应用场景。该应用场景为采用图像处理服务进行图像设计的场景。其中,图像处理服务可以部署于用户设备;也可以部署于云服务器,通过向用户设备传输云服务器生成的图像数据流来为用户提供图像处理界面。图像处理服务中可以包括文本处理模块,用于处理与文本相关的请求。
[0032]如图1所示,在图像处理界面上触发添加文本的请求时,文本处理模块会获取到字体类型(例如字体1)以及该文本。如前述相关技术的说明,文本处理模块可以通过在字库读取字体文件,基于读取到的字体文件提取文本的字形信息,以在图像处理界面中采用对应的字形显示文本。在如图1所示的场景中,虽然需要在图像中的文本数量较少,但为了丰富
图像的设计效果,往往需要使用多种字体,因此,需要读取大量的字体文件,但其中包含了较多不必要的文本信息,产生不必要的资源开销。
[0033]在本申请实施例中,为了提高读取速度、减少资源开销,可以预先存储对应于各种字体的字体文件解析数据,在需要以某种字体显示文本时,在对应的字体文件解析数据中读取文本的字形信息,基于该字形信息生成新的字体文件,以使用该字体文件将采用特定字体的文本添加到图像中。例如,针对图1所示的字库中的字体1.ttf、字体2.ttf、字体3.ttf等,分别解析对应的字体1解析数据、字体2解析数据、字体3解析数据等,并存储在特定存储空间中。若文本处理服务需要提取文本采用字体1时的字形信息,则可以在特定存储空间中的字体1解析数据读取出请求的文本的字形信息,并基于该字形信息生成新的字体文件,使用该字体文件将采用字体1的文本添加到图像中。
[0034]为了能够更加详尽地了解本申请实施例的特点与
技术实现思路
,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文本处理方法,包括:基于目标文本的字体,确定对应的字体文件解析数据;在所述字体文件解析数据中,读取所述目标文本的字形信息;基于所述目标文本的字形信息,生成第一字体文件;基于所述第一字体文件显示所述目标文本。2.根据权利要求1所述的方法,其中,在基于目标文本的字体,确定对应的字体文件解析数据之前,所述方法还包括:解析第二字体文件,得到所述字体文件解析数据,并将所述字体文件解析数据存储在缓存设备中。3.根据权利要求2所述的方法,其中,所述第二字体文件包括N个字体文件,N为大于或等于2的整数;所述解析第二字体文件,得到所述字体文件解析数据,包括:解析所述N个字体文件中的第i个字体文件,得到M个字的字形信息;其中,i为小于或等于N的正整数,M为大于或等于1的整数;解析所述N个字体文件中的第j个字体文件,得到L个字的字形信息;其中,j为小于或等于N的正整数,L为大于或等于1的整数;基于所述M个字的字形信息以及所述L个字的字形信息,得到所述字体文件解析数据。4.根据权利要求3所述的方法,其中,所述基于所述M个字的字形信息以及所述L个字的字形信息,得到所述字体文件解析数据,包括:对所述M个字的字形信息以及所述L个字的字形信息进行归一化,得到归一化数据;基于所述归一化数据,得到所述字体文件解析数据。5.根据权利要求1

4中任一项所述的方法,其中,所述基于所述目标文本的字形信息,生成第一字体文件,包括:基于所述目标文本的字形信息,在内存中生成所述第一...

【专利技术属性】
技术研发人员:朱瑞贤郑学剑魏强佟尧赵梓博
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

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

1