1.本技术属于文字处理技术领域,尤其涉及一种文字显示方法、文字显示装置、电子设备及计算机可读存储介质。
背景技术:2.书法练习除了对标准的文字进行练习外,还需要对一些基础的笔画、偏旁和/或部首进行练习,才能扎实的掌握书法基础。通常情况下,需要以包含待练习的笔画、偏旁和/或部首的范字为基础来实现对该笔画、偏旁和/或部首的练习。由于常见的文字都是单个字作为一个整体以同一个颜色进行显示,未能很好的突出基础的笔画、偏旁和/或部首,书法练习者难以将注意力及练习重点集中在待练习的笔画、偏旁和/或部首上,导致练习效果受到影响。
技术实现要素:3.本技术提供了一种文字显示方法、文字显示装置、电子设备及计算机可读存储介质,可高亮显示文字中特定的笔画、偏旁和/或部首,帮助用户进行针对性书法练习,一定程度上提升用户的书法练习效果。
4.第一方面,本技术提供了一种文字显示方法,包括:
5.基于待练习的文字元素确定目标字;
6.对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息;
7.基于上述各个笔画的轮廓信息生成上述目标字的显示文件,其中,上述显示文件中,与上述文字元素相关联的笔画的填充参数为第一预设值,与上述文字元素无关联的笔画的填充参数为默认值;
8.基于上述显示文件,显示上述目标字。
9.第二方面,本技术提供了一种文字显示装置,包括:
10.确定模块,用于基于待练习的文字元素确定目标字;
11.获取模块,用于对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息;
12.生成模块,用于基于上述各个笔画的轮廓信息生成上述目标字的显示文件,其中,上述显示文件中,与上述文字元素相关联的笔画的填充参数为第一预设值,与上述文字元素无关联的笔画的填充参数为默认值;
13.显示模块,用于基于上述显示文件,显示上述目标字。
14.第三方面,本技术提供了一种电子设备,上述电子设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。
15.第四方面,本技术提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
16.第五方面,本技术提供了一种计算机程序产品,上述计算机程序产品包括计算机
程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
17.本技术与现有技术相比存在的有益效果是:电子设备在基于待练习的文字元素确定目标字后,会对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息,然后可基于上述各个笔画的轮廓信息生成上述目标字的显示文件,其中,上述显示文件中,与上述文字元素相关联的笔画的填充参数为第一预设值,与上述文字元素无关联的笔画的填充参数为默认值,最后基于上述显示文件,显示上述目标字。由于显示文件中,与待练习的文字元素相关联的笔画的填充参数会被设定为第一预设值,而其它笔画的填充参数仍保持为默认值,这可使得电子设备加载该显示文件后,与待练习的文字元素相关联的笔画相比其它笔画被突出高亮显示,使得用户能够很好的将注意力集中在与待练习的文字元素相关联的笔画上,实现更好的书法练习的效果。
18.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
19.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是本技术实施例提供的文字显示方法的实现流程示意图;
21.图2是本技术实施例提供的目标字的一种静态显示效果示例图;
22.图3是本技术实施例提供的目标字的另一种静态显示效果示例图;
23.图4是本技术实施例提供的目标字的又一种静态显示效果示例图;
24.图5是本技术实施例提供的目标字的一种动态显示效果示例图;
25.图6是本技术实施例提供的目标字的另一种动态显示效果示例图;
26.图7是本技术实施例提供的文字显示装置的结构框图;
27.图8是本技术实施例提供的电子设备的结构示意图。
具体实施方式
28.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
29.为了说明本技术所提出的技术方案,下面通过具体实施例来进行说明。
30.下面以汉字为例,对本技术实施例提供的一种文字显示方法进行描述。可以理解,该文字显示方法不仅可用于显示汉字,也可用于显示日文、韩文或其它文字,此处不作限定。请参阅图1,该文字显示方法包括:
31.步骤101,基于待练习的文字元素确定目标字。
32.在本技术实施例中,电子设备可基于用户的输入,确定当前待练习的文字元素。对于汉字来说,该待练习的文字元素可以是笔画、部首和/或偏旁等,此处不作限定。电子设备
可预先存储一笔画库、部首库及偏旁库,该笔画库中可收录有汉字全部的基本笔画,该部首库可收录有汉字全部的部首,该偏旁库可收录有汉字全部的偏旁。用户可根据自己的书法练习目的,在笔画库、部首库和/或偏旁库中选择自己待练习的笔画、部首和/或偏旁(也即待练习的文字元素)。或者,用户也可在电子设备上以手写输入的方式输入自己待练习的笔画、部首和/或偏旁(也即待练习的文字元素)。本技术实施例不对该待练习的文字元素的确定方式作出限定。
33.在确定待练习的文字元素后,电子设备可查找获得包含该文字元素的所有字。仅作为示例,假定待练习的文字元素为偏旁心字底,则可查找出“急”、“总”、“忘”、“忐”及“忑”等多个以心字底为偏旁的字。用户可在所查找出的字中选定一个、两个或多个字作为目标字。
34.步骤102,对目标字库进行解析,获得目标字的各个笔画的轮廓信息。
35.在本技术实施例中,考虑到不管针对哪种文字,通常都有着多种可能的字体,因而需要先确定用户进行书法练习所期望的字体(也即待练习的字体),之后即可将该待练习的字体所对应的字库确定为目标字库。可以理解,一个字库中收录有多个文字。针对任一目标字来说,通过对目标字库的解析,即可获得该目标字在待练习的字体下的具体表现形式,由此可得到该目标字整体的轮廓信息。再对该目标字整体的轮廓信息进行裁剪,即可拆分获得该目标字的各个笔画的轮廓信息。这里所说的轮廓信息,也可理解为路径信息,实际上为:轮廓上的点所构成的封闭的路径。
36.在一些实施例中,电子设备可先获取用户的身份信息,然后基于该身份信息来确定用户的待练习的字体,之后即可在预设的至少两个字库中,将该待练习的字体所对应的字库确定为目标字库。电子设备可预先存储几种典型用户身份所普遍期望的字体,例如,对于学生来说,其普遍期望的字体为楷体(正楷),则可设定学生这一身份信息对应的待练习的字体为楷体(正楷)。如果所获取的用户的身份信息在电子设备中未预先存储有对应的字体,则可输出提醒消息,提醒用户主动选择其待练习的字体。
37.需要注意的是,一个目标字库通常对应一个ttf(true type font)文件。因而,本步骤所说的对目标字库进行解析,实质上为对目标字库所对应的ttf文件进行解析。
38.步骤103,基于各个笔画的轮廓信息生成目标字的显示文件。
39.在本技术实施例中,该显示文件包括有矢量图文件,也即该显示文件由矢量图文件而构成。其中,该显示文件可实现静态显示的效果,在这种情况下,该显示文件可仅包括一张矢量图文件。或者,该显示文件也可实现动态显示效果,在这种情况下,该显示文件可包括两张以上矢量图文件。
40.在矢量图文件中,包含有两种参数:路径参数及填充参数。一般情况下,该填充参数为默认值(例如“black”),也即表示对应的图案(在本实施例中为笔画)以黑色进行填充。为实现对目标字中的待练习的文字元素的高亮显示,可对生成的显示文件进行调整,使得显示文件的各个矢量图文件中,与该文字元素相关联的笔画的填充参数被调整为第一预设值(例如“red”),与该文字元素无关联的笔画的填充参数仍保持为默认值。
41.可以理解,与该文字元素相关联的笔画,指得是该笔画属于该文字元素的一部分。例如,假定文字元素为偏旁心字底,则对于目标字“急”来说,与该文字元素相关联的笔画分别为丶及丶(也即点、斜钩、点及点)。则这些笔画在显示文件中的填充参数会由
516 532 516 800 l 464 800 q 464 744 464 634 q 464 524 462 400 q 460 276 452 220 q 444 164 432 154 z"fill="black"/》
56.《path d="m 132 886 q 132 886 124 885 q 116 884 90 860 q 64 836 74 832 q 84 828 164 824 q 244 820 500 782 q 756 744 816 744 q 876 744 912 770 q 948 796 948 802 q 948 808 930 816 q 912 824 850 822 q 788 820 676 820 q 564 820 470 832 q 376 844 262 866 q 148 888 132 886 z"fill="black"/》
57.《/g》
58.《/svg》
59.其中,字符“path”表示路径参数,可以理解,该路径参数实际基于笔画对应的轮廓信息而得。字符“fill”表示填充参数,可以理解,该填充参数默认为“black”,表示默认以黑色进行填充。
60.仅作为示例,请参阅图2,图2给出了基于未修改的矢量图文件,目标字“土”的静态显示效果。可以看出,该目标字中未有任何笔画被高亮。
61.a2、在矢量图文件中,将与文字元素相关联的笔画的填充参数由默认值更改为第一预设值。
62.仅作为示例,第一预设值为“red”,也即以红色进行填充。更改后的矢量图文件如下所示:
63.《?xml version='1.0'encoding='utf-8'?》
64.《svg xmlns="http://www.w3.org/2000/svg"version="1.1"viewbox="0 0 1024 1024"》
65.《g》
66.《path d="m 268 516 q 268 516 258 510 q 248 504 246 496 q 244 488 366 472 q 488 456 590 430 q 692 404 724 416 q 756 428 756 436 q 756 444 746 454 q 736 464 544 496 q 352 528 320 528 q 288 528 268 516 z"fill="red"/》
67.《path d="m 432 154 q 432 154 426 149 q 420 144 424 130 q 428 116 472 130 q 516 144 528 156 q 540 168 534 184 q 528 200 524 232 q 520 264 518 398 q 516 532 516 800 l 464 800 q 464 744 464 634 q 464 524 462 400 q 460 276 452 220 q 444 164 432 154 z"fill="black"/》
68.《path d="m 132 886 q 132 886 124 885 q 116 884 90 860 q 64 836 74 832 q 84 828 164 824 q 244 820 500 782 q 756 744 816 744 q 876 744 912 770 q 948 796 948 802 q 948 808 930 816 q 912 824 850 822 q 788 820 676 820 q 564 820 470 832 q 376 844 262 866 q 148 888 132 886 z"fill="black"/》
69.《/g》
70.《/svg》
71.为便于查阅,将被更改的填充参数通过下划线进行突出显示。实际应用时,该矢量图文件中并不会有被下划线的数据。
72.a3、将更改后的矢量图文件确定为显示文件。
73.在填充参数更改完毕后,即可得到更改后的矢量图文件,该矢量图文件即可被确定为显示文件。由于短横所对应的填充参数已被更改为“red”,后续加载该显示文件时,电
子设备会以红色显示“土”字中的短横,其它笔画仍显示为黑色,由此实现对待练习的文字元素的突出显示。仅作为示例,请参阅图3,图3给出了基于该修改后的矢量图文件,目标字“土”的静态显示效果。在图3中,以深灰色表示红色。可以看出,通过更改填充参数,该目标字中的短横被高亮。
74.在一些实施例中,该短横由于是第一个笔画,在基于笔顺对应转换各个笔画得到矢量图文件时,会导致该短横所对应的参数(包括路径参数及填充参数)在竖所对应的参数之前。电子设备在加载显示文件时,针对该矢量图文件中的数据,是顺序进行读取,也即先读取短横所对应的参数,然后再读取竖所对应的参数。由于短横与竖存在重叠的部分,这会导致以红色显示的短横被以黑色显示的竖所部分遮挡,如图3所示。
75.为解决这一问题,电子设备可在步骤a2之后,在步骤a3之前,再对矢量图文件进行更改,具体为:在矢量图文件中,将与待练习的文字元素相关联的笔画的参数移动至矢量图文件的末尾。也即,在前文示例中,将短横所对应的参数(包括路径参数及填充参数)移动至长横及竖所分别对应的参数之后。更改后的矢量图文件如下所示:
76.《?xml version='1.0'encoding='utf-8'?》
77.《svg xmlns="http://www.w3.org/2000/svg"version="1.1"viewbox="0 0 1024 1024"》
78.《g》
79.《path d="m 432 154 q 432 154 426 149 q 420 144 424 130 q 428 116 472 130 q 516 144 528 156 q 540 168 534 184 q 528 200 524 232 q 520 264 518 398 q 516 532 516 800 l 464 800 q 464 744 464 634 q 464 524 462 400 q 460 276 452 220 q 444 164 432 154 z"fill="black"/》
80.《path d="m 132 886 q 132 886 124 885 q 116 884 90 860 q 64 836 74 832 q 84 828 164 824 q 244 820 500 782 q 756 744 816 744 q 876 744 912 770 q 948 796 948 802 q 948 808 930 816 q 912 824 850 822 q 788 820 676 820 q 564 820 470 832 q 376 844 262 866 q 148 888 132 886 z"fill="black"/》
81.《path d="m 268 516 q 268 516 258 510 q 248 504 246 496 q 244 488 366 472 q 488 456 590 430 q 692 404 724 416 q 756 428 756 436 q 756 444 746 454q 736 464 544 496 q 352 528 320 528 q 288 528 268 516 z"fill="red"/》
82.《/g》
83.《/svg》
84.为便于查阅,将被移动的参数通过下划线进行突出显示。实际应用时,该矢量图文件中并不会有被下划线的数据。
85.经过上述再一次修改,可使得待练习的文字元素不被其它笔画所遮挡。仅作为示例,请参阅图4,图4给出了基于该再次修改后的矢量图文件,目标字“土”的显示效果。在图4中,以深灰色表示红色。可以看出,该目标字中的短横被高亮,且未有任何部分被竖所遮挡。
86.在另一种应用场景中,针对任一目标字,电子设备可以动态效果显示该目标字,具体为以动态显示的方式给出目标字的笔画撰写顺序(笔顺)。为实现该动态效果,在步骤102之后,电子设备需要先确定目标字的笔顺;相应地,在步骤103中,电子设备就可以基于所确定的笔顺及各个笔画的轮廓信息生成目标字的显示文件。
87.具体地,拆分后的笔画不仅存在乱序的问题,还存在笔画走向相反的问题。为解决该问题,电子设备预先已通过智能笔等设备采集了各个汉字的正确笔顺,则电子设备可通过如下过程确定目标字拆分后的笔画的顺序:先提取出拆分所得的各个笔画的骨架信息,得到笔画集;然后基于笔画集得到所有可能的笔画序列,由于存在提取的笔画走向相反的问题,所以笔画的方向(正及反)也会考虑在内,例如,笔画1(正)-笔画2(正)-笔画3(正)为一个笔画序列,笔画1(反)-笔画2(正)-笔画3(正)为另一个笔画序列,以此类推;接着采用动态时间规整(dynamic time warping,dtw)算法,计算各个可能的笔画序列分别与目标字的正确笔画序列(由预先采集的目标字的正确笔顺而得)的距离,即可找到最接近的笔画序列(也即距离最小的笔画序列),通过该最接近的笔画序列即可确定目标字的笔顺,也即确定拆分所得的笔画分别是第几笔。
88.可以理解,在前文所示出的静态效果的应用场景下,也可通过上述过程确定目标字的笔顺,由此更快速的确定目标字中与待练习的文字元素相关联的笔画。当然,也可通过形状的相似性确定目标字中与待练习的文字元素相关联的笔画,此处不作限定。
89.为实现动态显示的效果,显示文件可通过如下步骤生成:
90.b1、基于目标字的笔顺及各个笔画的轮廓信息,转换得到n个矢量图文件。
91.其中,n为目标字的笔画的数量,第i个矢量图文件基于目标字的前i个笔画的轮廓信息转换得到,i为不大于n的正整数。
92.仅作为示例,仍以目标字“土”为例,则由于该目标字“土”有三笔,可转换得到三个矢量图文件。其中,第1个矢量图文件由第1个笔画(也即短横)的轮廓信息转换而得,也即第1个矢量图文件只有第1个笔画(也即短横)的参数(包括路径参数及填充参数);第2个矢量图文件由第1个笔画(也即短横)及第2个笔画(也即竖)的轮廓信息转换而得,也即第2个矢量图文件只有第1个笔画及第2个笔画(也即短横及竖)的参数(包括路径参数及填充参数),可理解为第2个矢量图文件是在第1个矢量图文件的第1个笔画的参数之后新增第2个笔画的参数而得;第3个矢量图文件由全部的3个笔画的轮廓信息转换而得,也即第3个矢量图文件有所有笔画的参数(包括路径参数及填充参数),可理解为第3个矢量图文件是在第2个矢量图文件的第2个笔画的参数之后新增第3个笔画的参数而得。
93.b2、在n个矢量图文件中,将与文字元素相关联的笔画的填充参数由默认值更改为第一预设值。
94.可以理解,如果目标字中的第一个笔画不属于待练习的文字元素,则第1个矢量图文件中不会有与该文字元素相关联的笔画的参数。也即是说,并非所有的矢量图文件均会有与文字元素相关联的笔画的参数。实际上,在这n个矢量图文件中,若待练习的文字元素开始于第j个笔画,则仅在第j个矢量图文件至第n个矢量图文件中,才会有与该文字元素相关联的笔画的参数;也即,仅在第j个矢量图文件至第n个矢量图文件中,才需要将与该文字元素相关联的笔画的填充参数由默认值更改为第一预设值,其中,j≤n。
95.仅作为示例,仍以目标字是“土”,待练习的文字元素是短横为例:由于短横为第一笔,因而,第1个矢量图文件至第3个矢量图文件(也即所有的矢量图文件)都会有该短横所对应的参数。基于此,需要在所有的矢量图文件中,将该短横的填充参数由默认值更改为第一预设值。
96.b3、将更改后的n个矢量图文件打包为显示文件。
97.更改后的n个矢量图文件可打包为一个显示文件。则在加载该显示文件时,该n个矢量图文件可按顺序依次显示,呈现出基于笔顺的动态显示效果,帮助用户熟练掌握撰写该目标字的正确笔顺。
98.仅作为示例,请参阅图5,图5给出了目标字“土”的动态显示效果。在图5中,以深灰色表示红色。可以看出,t0时刻仅显示红色短横,此时“土”字未显示完全;t1时刻仅显示红色短横及黑色竖,此时“土”字仍未显示完全;t2时刻显示红色短横、黑色竖及黑色长横,此时“土”字显示完全。
99.在一些实施例中,为了更加突出笔顺,在步骤b3之前,电子设备还可对矢量图文件进行如下操作:
100.在第i个矢量图文件中,若该第i个笔画与待练习的文字元素无关联,则将该第i个笔画的填充参数由默认值更改为第二预设值。
101.可以理解,在第i个矢量图文件中,若该第i个笔画与待练习的文字元素相关联,则该第i个笔画的填充参数已由默认值更改为了第一预设值,电子设备不会再作多余的修改。反之,在第i个矢量图文件中,若该第i个笔画与待练习的文字元素无关联,则该第i个笔画的填充参数依然为默认值。考虑到在该第i个矢量图文件中,该第i个笔画为最新一笔,因而可对该最新一笔也突出显示,具体为将该第i个笔画的填充参数由默认值更改为第二预设值。仅作为示例,第二预设值为“yellow”,也即以黄色进行填充。
102.仅作为示例,请参阅图6,图6给出了目标字“土”的动态显示效果。在图6中,以深灰色表示红色,以浅灰色表示黄色。可以看出,t0时刻仅显示红色短横,此时“土”字未显示完全;t1时刻仅显示红色短横及黄色竖,此时“土”字仍未显示完全;t2时刻显示红色短横、黑色竖及黄色长横,此时“土”字显示完全。
103.在一些实施例中,考虑到显示文件由多个矢量图文件打包而得时,电子设备可能会最终定格显示最后一个矢量图文件,因而,可在n个矢量图文件之后,再新增第n+1个矢量图文件。在该第n+1个矢量图文件中,与待练习的文字元素相关联的笔画的参数被移动至了该第n+1个矢量图文件的末尾,且与该待练习的文字元素相关联的笔画的填充参数为第一预设值,与该待练习的文字元素无关联的笔画的填充参数为默认值。基于这n+1个矢量图文件生成显示文件,可避免最终定格显示时,该待练习的文字元素的高亮效果被遮挡。
104.由上可见,通过本技术实施例,使得显示文件中与待练习的文字元素相关联的笔画的填充参数会被设定为第一预设值,而其它笔画的填充参数仍保持为默认值。这样一来,电子设备加载该显示文件后,与待练习的文字元素相关联的笔画相比其它笔画被突出高亮显示,用户由此可很好的将注意力集中在与待练习的文字元素相关联的笔画上,实现更好的书法练习的效果。
105.对应于前文所提出的文字显示方法,本技术实施例提供了一种文字显示装置。请参阅图7,本技术实施例中的文字显示装置700包括:
106.确定模块701,用于基于待练习的文字元素确定目标字;
107.获取模块702,用于对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息;
108.生成模块703,用于基于上述各个笔画的轮廓信息生成上述目标字的显示文件,其中,上述显示文件中,与上述文字元素相关联的笔画的填充参数为第一预设值,与上述文字
元素无关联的笔画的填充参数为默认值;
109.显示模块704,用于基于上述显示文件,显示上述目标字。
110.可选地,上述生成模块703,包括:
111.第一转换单元,用于基于各个笔画的轮廓信息,转换得到一个矢量图文件;
112.第一更改单元,用于在上述矢量图文件中,将与上述文字元素相关联的笔画的填充参数由上述默认值更改为上述第一预设值;
113.确定单元,用于将更改后的上述矢量图文件确定为上述显示文件。
114.可选地,上述生成模块703,还包括:
115.第二更改单元,用于在上述矢量图文件中,将与上述文字元素相关联的笔画的参数移动至上述矢量图文件的末尾。
116.可选地,上述文字显示装置700还包括:
117.笔顺确定模块,用于确定上述目标字的笔顺;
118.上述生成模块703,具体用于基于上述笔顺及上述各个笔画的轮廓信息生成上述目标字的显示文件。
119.可选地,上述生成模块703,包括:
120.第二转换单元,用于基于上述笔顺及上述各个笔画的轮廓信息,转换得到n个矢量图文件,其中,n为上述目标字的笔画的数量,第i个矢量图文件基于上述目标字的前i个笔画的轮廓信息转换得到,i为不大于n的正整数;
121.第三更改单元,用于在上述n个矢量图文件中,将与上述文字元素相关联的笔画的填充参数由上述默认值更改为上述第一预设值;
122.打包单元,用于将更改后的上述n个矢量图文件打包为上述显示文件。
123.可选地,上述生成模块703,还包括:
124.第四更改单元,用于在第i个矢量图文件中,若上述第i个笔画与上述文字元素无关联,则将上述第i个笔画的填充参数由上述默认值更改为第二预设值。
125.可选地,上述文字显示装置700还包括:
126.身份获取模块,用于获取用户的身份信息;
127.字体确定模块,用于基于上述身份信息,确定上述用户的待练习的字体;
128.字库确定模块,用于根据上述待练习的字体,在预设的至少两个字库中确定目标字库。
129.由上可见,通过本技术实施例,使得显示文件中与待练习的文字元素相关联的笔画的填充参数会被设定为第一预设值,而其它笔画的填充参数仍保持为默认值。这样一来,电子设备加载该显示文件后,与待练习的文字元素相关联的笔画相比其它笔画被突出高亮显示,用户由此可很好的将注意力集中在与待练习的文字元素相关联的笔画上,实现更好的书法练习的效果。
130.本技术实施例还提供了一种电子设备,请参阅图8,本技术实施例中的电子设备8包括:存储器801,一个或多个处理器802(图8中仅示出一个)及存储在存储器801上并可在处理器上运行的计算机程序。其中,存储器801用于存储软件程序以及单元,处理器802通过运行存储在存储器801的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器802通过运行存储在存储器801的上述计算机程
序时实现以下步骤:
131.基于待练习的文字元素确定目标字;
132.对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息;
133.基于上述各个笔画的轮廓信息生成上述目标字的显示文件,其中,上述显示文件中,与上述文字元素相关联的笔画的填充参数为第一预设值,与上述文字元素无关联的笔画的填充参数为默认值;
134.基于上述显示文件,显示上述目标字。
135.假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述基于上述各个笔画的轮廓信息生成上述目标字的显示文件,包括:
136.基于各个笔画的轮廓信息,转换得到一个矢量图文件;
137.在上述矢量图文件中,将与上述文字元素相关联的笔画的填充参数由上述默认值更改为上述第一预设值;
138.将更改后的上述矢量图文件确定为上述显示文件。
139.在上述第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,在上述将更改后的上述矢量图文件确定为上述显示文件之前,处理器802通过运行存储在存储器801的上述计算机程序时还实现以下步骤:
140.在上述矢量图文件中,将与上述文字元素相关联的笔画的参数移动至上述矢量图文件的末尾。
141.在上述第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,在上述获得上述目标字的各个笔画的轮廓信息之后,处理器802通过运行存储在存储器801的上述计算机程序时还实现以下步骤:
142.确定上述目标字的笔顺;
143.上述基于上述各个笔画的轮廓信息生成上述目标字的显示文件,包括:
144.基于上述笔顺及上述各个笔画的轮廓信息生成上述目标字的显示文件。
145.在上述第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述基于上述笔顺及上述各个笔画的轮廓信息生成上述目标字的显示文件,包括:
146.基于上述笔顺及上述各个笔画的轮廓信息,转换得到n个矢量图文件,其中,n为上述目标字的笔画的数量,第i个矢量图文件基于上述目标字的前i个笔画的轮廓信息转换得到,i为不大于n的正整数;
147.在上述n个矢量图文件中,将与上述文字元素相关联的笔画的填充参数由上述默认值更改为上述第一预设值;
148.将更改后的上述n个矢量图文件打包为上述显示文件。
149.在上述第五种可能的实施方式作为基础而提供的第六种可能的实施方式中,在上述将更改后的上述n个矢量图文件打包为上述显示文件之前,处理器802通过运行存储在存储器801的上述计算机程序时还实现以下步骤:
150.在第i个矢量图文件中,若上述第i个笔画与上述文字元素无关联,则将上述第i个笔画的填充参数由上述默认值更改为第二预设值。
151.在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基
础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础,或者上述第五种可能的实施方式作为基础,或者上述第六种可能的实施方式作为基础而提供的第七种可能的实施方式中,在上述对目标字库进行解析,获得上述目标字的各个笔画的轮廓信息之前,处理器802通过运行存储在存储器801的上述计算机程序时实现以下步骤:
152.获取用户的身份信息;
153.基于上述身份信息,确定上述用户的待练习的字体;
154.根据上述待练习的字体,在预设的至少两个字库中确定目标字库。
155.应当理解,在本技术实施例中,所称处理器802可以是cpu,该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
156.存储器801可以包括只读存储器和随机存取存储器,并向处理器802提供指令和数据。存储器801的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器801还可以存储设备类别的信息。
157.由上可见,通过本技术实施例,使得显示文件中与待练习的文字元素相关联的笔画的填充参数会被设定为第一预设值,而其它笔画的填充参数仍保持为默认值。这样一来,电子设备加载该显示文件后,与待练习的文字元素相关联的笔画相比其它笔画被突出高亮显示,用户由此可很好的将注意力集中在与待练习的文字元素相关联的笔画上,实现更好的书法练习的效果。
158.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
159.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
160.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
161.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,
仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
162.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
163.上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
164.以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。