一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种缩排处理装置及方法与流程

2023-01-15 07:11:33 来源:中国专利 TAG:


1.本技术涉及显示器技术领域,尤其涉及一种缩排处理装置及方法。


背景技术:

2.液晶显示器(liquid crystal display,lcd)主要材质是玻璃和液晶,在屏幕菜单式调节方式(on-screen display,osd)显示中,每个待显示的文字都是以字体(简称font)为单位进行显示的,但各个font内各自存储的文字之间会存在间距,尤其是对于中大尺寸的显示面板,如果不对各个文字进行缩排,那么当显示面板被点亮时,会发生由于各个文字之间间距过大而无法正常显示的情况。
3.目前,市面上所使用的显示器芯片大都使用硬件缩排方式来处理osd font的显示,具体为,在将每个font通过寄存器传输到芯片内部后,由芯片内部的硬件算法模块来处理各个font内文字之间的缩排。但是,硬件缩排方式无疑是需要增加芯片的制造成本的,特别是随着芯片的量产需求增大,所消耗的硬件成本也是巨大的。


技术实现要素:

4.本技术提供了一种缩排处理装置及方法,主要目的在于利用芯片内的软件缩排处理逻辑替代硬件算法模块以实现对文字的缩排处理,从而在不增加芯片制造成本的前提下,也能达到较佳的缩排处理效果,节约处理成本,更加利于应用生产。
5.为了达到上述目的,本技术主要提供如下技术方案:
6.本技术第一方面提供了一种缩排处理装置,应用于芯片,该装置包括:
7.获取单元,用于获取待显示的多个连接排布的字体单元,每个所述字体单元表示一个文字,所述字体单元是由像素点组成的矩形单元;
8.转换单元,用于将所述字体单元转换为芯片可读的字库结构;
9.缩排处理单元,用于基于所述字体单元对应的字库结构,从各个所述字体单元内读取文字并按照预设缩排规则进行文字之间间距的缩排处理,得到经缩排处理后的文字。
10.在本技术第一方面的一些变更实施方式中,所述缩排处理单元具体用于:
11.根据所述字体单元对应的字库结构,从所述字体单元中读取所述文字对应的像素点;
12.根据所述文字对应的像素点,构建所述文字对应的矩形块,所述矩形块包含所述文字;
13.对于每个所述字体单元中包含的文字,通过缩减相邻两个所述文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布所述矩形块;
14.根据所述重新平移排布所述矩形块,得到经缩排处理后的文字。
15.在本技术第一方面的一些变更实施方式中,在所述缩排处理单元的功能应用中,其中,所述根据所述文字对应的像素点,构建所述文字对应的矩形块,包括:
16.从所述文字对应的像素点中,确定在所述字体单元的水平方向上间距最大的两个
像素点和垂直方向上间距最大的两个像素点;
17.根据所述水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点,构建对应的矩形像素区域;
18.将所述矩形像素区域,作为所述文字对应的矩形块。
19.在本技术第一方面的一些变更实施方式中,在所述缩排处理单元的功能应用中,其中,所述根据所述文字对应的像素点,构建所述文字对应的矩形块,还包括:
20.在所述将所述矩形像素区域,作为所述文字对应的矩形块之前,基于所述字体单元的水平方向上预设数目像素点和所述垂直垂直方向上间距最大的两个像素点,构建对应的间隔像素区域;
21.将所述间隔像素区域添加到所述矩形像素区域的单侧,得到经扩充处理后的矩形像素区域。
22.在本技术第一方面的一些变更实施方式中,在所述缩排处理单元的功能应用中,其中,所述对于每个所述字体单元中包含的文字,通过缩减相邻两个所述文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布所述矩形块,包括:
23.根据多个连接排布的字体单元所覆盖的像素区域,构建由多个所述字体单元组成的文字移动区域;
24.基于多个所述字体单元各自包含的矩形块,确定所述文字移动区域内包含的多个矩形块;
25.从所述文字移动区域内包含的多个所述矩形块中任选一个矩形块,作为移动参照标杆;
26.在所述文字移动区域内,按照预设保留间距值,以移动参照标杆为基准,平移其他所述矩形块以缩减各个所述矩形块之间的间距,得到重新平移排布的所述矩形块。
27.在本技术第一方面的一些变更实施方式中,所述转换单元具体用于:
28.将字体单元所包含的像素点划分成多组,每组像素点为包含了预设整数行的像素点;
29.利用预设数目字节所包含的比特位,逐个存储每组像素点中各个像素点;
30.将利用所述预设数目字节所存储的每组像素点,表征为二进制数据;
31.将所述二进制数据转换为十六进制数据,得到每组像素点对应的十六进制数据;
32.根据所述字体单元包含的多组像素点各自对应表征的十六进制数据,得到所述字体单元对应表征的十六进制数据,作为所述字体单元对应芯片可读的字体结构。
33.在本技术第一方面的一些变更实施方式中,所述装置还包括:
34.确定单元,用于在将所述字体单元转换为芯片可读的字库结构之后,基于每个字体单元对应的字库结构,从所述字体单元中确定所述文字的表征形状;
35.校验单元,用于校验经缩排处理后的文字与所述表征形状是否一致,若否,则确定缩排处理异常。
36.本技术第二方面提供了一种遥控电视的方法,应用于芯片,该方法包括:
37.获取待显示的多个连接排布的字体单元,每个所述字体单元表示一个文字,所述字体单元是由像素点组成的矩形单元;
38.将所述字体单元转换为芯片可读的字库结构;
39.基于所述字体单元对应的字库结构,从各个所述字体单元内读取文字并按照预设缩排规则进行文字之间间距的缩排处理,得到经缩排处理后的文字。
40.在本技术第二方面的一些变更实施方式中,所述基于所述字体单元对应的字库结构,从各个所述字体单元内读取文字并按照预设缩排规则进行文字之间间距的缩排处理,包括:
41.根据所述字体单元对应的字库结构,从所述字体单元中读取所述文字对应的像素点;
42.根据所述文字对应的像素点,构建所述文字对应的矩形块,所述矩形块包含所述文字;
43.对于每个所述字体单元中包含的文字,通过缩减相邻两个所述文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布所述矩形块;
44.根据所述重新平移排布所述矩形块,得到经缩排处理后的文字。
45.在本技术第二方面的一些变更实施方式中,所述根据所述文字对应的像素点,构建所述文字对应的矩形块,包括:
46.从所述文字对应的像素点中,确定在所述字体单元的水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点;
47.根据所述水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点,构建对应的矩形像素区域;
48.将所述矩形像素区域,作为所述文字对应的矩形块。
49.在本技术第二方面的一些变更实施方式中,在所述将所述矩形像素区域,作为所述文字对应的矩形块之前,所述方法还包括:
50.基于所述字体单元的水平方向上预设数目像素点和所述垂直垂直方向上间距最大的两个像素点,构建对应的间隔像素区域;
51.将所述间隔像素区域添加到所述矩形像素区域的单侧,得到经扩充处理后的矩形像素区域。
52.在本技术第二方面的一些变更实施方式中,所述对于每个所述字体单元中包含的文字,通过缩减各个所述文字对应的矩形块之间的间距,在多个连接排布的字体单元所覆盖的像素区域中重新平移排布所述矩形块,包括:
53.根据多个连接排布的字体单元所覆盖的像素区域,构建由多个所述字体单元组成的文字移动区域;
54.基于多个所述字体单元各自包含的矩形块,确定所述文字移动区域内包含的多个矩形块;
55.从所述文字移动区域内包含的多个所述矩形块中任选一个矩形块,作为移动参照标杆;
56.在所述文字移动区域内,按照预设保留间距值,以移动参照标杆为基准,平移其他所述矩形块以缩减各个所述矩形块之间的间距,得到重新平移排布的所述矩形块。
57.在本技术第二方面的一些变更实施方式中,所述将所述字体单元转换为芯片可读的字库结构,包括:
58.将字体单元所包含的像素点划分成多组,每组像素点为包含了预设整数行的像素点;
59.利用预设数目字节所包含的比特位,逐个存储每组像素点中各个像素点;
60.将利用所述预设数目字节所存储的每组像素点,表征为二进制数据;
61.将所述二进制数据转换为十六进制数据,得到每组像素点对应的十六进制数据;
62.根据所述字体单元包含的多组像素点各自对应表征的十六进制数据,得到所述字体单元对应表征的十六进制数据,作为所述字体单元对应芯片可读的字体结构。
63.在本技术第二方面的一些变更实施方式中,所述方法还包括:
64.在将所述字体单元转换为芯片可读的字库结构之后,基于每个字体单元对应的字库结构,从所述字体单元中确定所述文字的表征形状;
65.校验经缩排处理后的文字与所述表征形状是否一致,若否,则确定缩排处理异常
66.本技术第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的缩排处理方法。
67.本技术第四方面提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的缩排处理方法。
68.借由上述技术方案,本技术提供的技术方案至少具有下列优点:
69.本技术提供了一种缩排处理装置及方法,本技术提供的装置包括:获取单元、转换单元和缩排处理单元。本技术提供的装置应用于芯片,本技术是利用获取单元获取待显示的多个连接排布的字体单元,每个字体单元都对应表示一个文字,然后利用转换单元将每个字体单元转换为芯片可读的字库结构,从而方便于芯片读取到每个字体单元内的文字,再者利用缩排处理单元按照预设缩排规则对这些文字进行缩排处理,以便在显示面板点亮之后输出经缩排处理后的文字。相较于现有技术,本技术相当于是以芯片内软件缩排处理逻辑实现对文字的缩排处理,解决了因需要硬件算法模块进行缩排处理导致增加芯片制造成本的问题,本技术以软件缩排处理逻辑替代硬件算法模块,从而不增加芯片制造成本的前提下,也能达到较佳的缩排处理效果,节约处理成本,更加利于应用生产。
70.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
71.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
72.图1为本技术实施例提供的一种缩排处理装置的组成框图;
73.图2为本技术实施例例举的三个字体单元的示意图;
74.图3为本技术实施例例举的经缩排处理后文字的示意图;
75.图4为本技术实施例提供的另一种缩排处理装置的组成框图;
76.图5为本技术实施例例举的包含文字“i”的字体单元的示意图;
77.图6为本技术实施例例举的包含文字“c”的字体单元的示意图;
78.图7为本技术实施例例举的字库结构示意图;
79.图8为本技术实施例例举的字体结构表征二进制数据的示意图;
80.图9为本技术实施例例举的另一个字体结构表征二进制数据的示意图示意图;
81.图10为本技术实施例提供的一种缩排处理方法流程图;
82.图11为本技术实施例提供的另一种缩排处理方法流程图。
具体实施方式
83.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
84.本技术实施例提供了一种缩排处理装置,如图1所示,该装置包括:获取单元11,用于获取待显示的多个连接排布的字体单元,每个字体单元包含一个文字,字体单元是由像素点组成的矩形单元;转换单元12,用于将字体单元转换为芯片可读的字库结构;缩排处理单元13,用于基于字体单元对应的字库结构,从各个字体单元内读取文字并按照预设缩排规则进行文字之间间距的缩排处理,得到经缩排处理后的文字。以及在装置中各个单元的连接结构为:获取单元11连接转换单元12,转换单元12连接缩排处理单元13。
85.在本技术实施例中,在屏幕菜单式调节方式(on-screen display,osd)显示中,每个待显示的文字都是以字体(简称font)为单位进行显示的,简而言之一个文字对应一个字体单元,该字体单元是由像素点组成的矩形单元,并且字体单元内包含对应的文字,如图2所示的三个字体单元各自包含文字“i”“c”“e”。
86.对于液晶显示器,在显示面板未被点亮之前,会基于接收到的显示信号进行相关处理,得到以字体单元装载的文字,并且多个字体单元是连接排布的,如包含文字“i”“c”“e”的三个字体单元是连接排布的,并且各个字体单元之间不存在间隔,但如图2所示,各个文字之间是存在间距的,如“i”与“c”之间间距远大于“c”和“e”之间的间距,如果将这样的多个字体单元直接输出显示到显示面板,除了如图2示出的因文字之间间距不等而排版不美观之外,尤其是对于中大尺寸的显示面板,如果文字之间间距过大,将会导致某些文字被挤出显示面板而无法正常显示了。据此本技术实施例提供对这些字体单元内文字之间的缩排处理方案。
87.首先,本技术实施例利用转换单元12将获取单元11获取到的多个连接排布的字体单元转换为芯片可读的字库结构,从而使得芯片能够从每个字体单元中读取到文字。例如,通常设置芯片内4个字节用于存储一个字体单元。
88.然后,基于预先向芯片的缩排处理单元13所设置的预设缩排规则,使得芯片利用缩排处理单元13按照预设缩排规则对多个字体单元各自包含的文字之间进行缩排处理,得到经缩排处理后的文字。对于芯片而言,利用转换单元12和缩排处理单元13实现了芯片内软件缩排处理逻辑,从而替代了设置硬件算法模块的需求,即以软件处理替代了硬件处理需求。最后,芯片可以直接将经缩排处理后的文字输出显示到显示面板上,如图3所示的经缩排处理后的文字“i”“c”“e”,也就是,相应得到显示面板上的文字显示效果。
89.需要说明的是,对比图2和图3,如图2所示,之前由于每个文字只是存在于一个字体单元中,虽然各个字体单元之间连接不存在间距,但是由于文字所在对应字体单元中位置不一样,导致各个文字之间间距是不等的。但是如图3,在经缩排处理后,文字未必一定还在原字体单元内(如“c”移动到了“i”所在字体单元内),即一个字体单元内也未必只存储一个文字了,但是本技术实施例仍然确保文字是在这些字体单元所覆盖的像素区域内移动的,从而不仅缩减了各个文字之间间距,避免某个文字未被显示面板显示出来,还可以进一步根据需求来调整间距的大小。
90.以上,本技术实施例提供的缩排处理装置,应用于芯片,相较于现有技术,本技术相当于是以芯片内软件缩排处理逻辑实现对文字的缩排处理,解决了因需要硬件算法模块进行缩排处理导致增加芯片制造成本的问题,本技术以软件缩排处理逻辑替代硬件算法模块,从而不增加芯片制造成本的前提下,也能达到较佳的缩排处理效果,节约处理成本,更加利于应用生产。
91.在一些变更实施例中,本技术实施例还提供了另一种缩排处理装置,如图4所示,该装置除了包括:获取单元11、转换单元12、缩排处理单元13之外,还包括确定单元14和校验单元15,下面对各个单元的功能应用,进行详细地解释说明:
92.首先,本技术实施例提供的缩排处理单元13还具体用于:根据字体单元对应的字库结构,从字体单元中读取文字对应的像素点;根据文字对应的像素点,构建文字对应的矩形块,矩形块包含文字;对于每个字体单元中包含的文字,通过缩减相邻两个文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布矩形块;根据重新平移排布矩形块,得到经缩排处理后的文字。
93.其中,根据字体单元对应的字库结构,从字体单元中读取文字对应的像素点,具体解释说明如下:
94.在本技术实施例中,需要说明的是,将字体单元转换成字库结构的目的是让芯片可读字体单元,实际上仅是数据形式发生了转换而已,字体单元并未发生改变,这样使得芯片通过读取字库结构,能够获知字体单元是由多大像素尺寸的矩形单元组成的,以及字体单元内文字对应表示为哪些像素点,也就是相当于覆盖了哪些像素点。
95.示例性的,如图5所例举的包含文字“i”的字体单元,字体单元是由12*18(宽*高)个像素点组成的矩形单元,并且文字“i”所占的像素点为第4-5行、第7-15行上各自第2个和第3个像素点。
96.其中,根据文字覆盖的像素点,构建文字对应的矩形块,矩形块包含文字。进一步的,细化包括为:从文字对应的像素点中,确定在字体单元的水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点;根据水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点,构建对应的矩形像素区域;将矩形像素区域作为文字对应的矩形块。示例性解释说明如下:
97.如图6例举的包含文字“c”的字体单元,该字体单元由12*18(宽*高)个像素点组成的矩形单元,如图6中对于文字“c”所占的像素点,在像素宽尺寸上第4个像素点和第10个像素点之间间距最大,在像素高尺寸上第4个和第15个像素点之间间距最大,从而在像素宽尺寸上得到间距(包含边界像素点)为7个像素点,在像素高尺寸上得到间距(包含边界像素点)为12个像素点,进而以7*12(宽*高)个像素点组成矩形像素区域,作为文字“c”对应的矩
形块。
98.进一步的,在构建文字对应的矩形块过程中,优选实施方式为:在将矩形像素区域作为文字对应的矩形块之前,基于字体单元的水平方向上预设数目像素点和垂直垂直方向上间距最大的两个像素点,构建对应的间隔像素区域,将间隔像素区域添加到矩形像素区域的单侧,得到经扩充处理后的矩形像素区域。示例性解释说明如下:
99.在本技术实施例中,在将矩形像素区域作为文字对应的矩形块之前,还可以构建文字对应的间隔像素区域,如图6例举的文字“c”,可以选取预设数目(如2个)像素点,在文字“c”的左侧或右侧构建一个间隔像素区域,从而使得文字“c”对应的矩形像素区域由原本的7*12(宽*高)个像素点扩充为9*12(宽*高)个像素点,并将扩充后的矩形像素区域作为文字对应的矩形块。
100.这样扩充处理的作用是,由于缩排文字是以移动包含文字的矩形块而实现的,那么不管缩减矩形块之间距离为多少,都能够确保文字之间实际仍然是存在间距的,避免经缩排后出现多个文字紧挨在一起(即无间距)导致排版呈现方便被阅读、不美观的情况。并且,进一步优选实施方式为,对于每个文字的矩形块,都应该设置相同单侧或者双侧的间隔像素区域,例如对于文字“i”“c”“e”各自对应的矩形块,间隔像素区域应该都设置在文字左侧,或者都设置在文字右侧,又或者都设置在文字两侧,从而确保最终显示面板输出显示的文字之间间距均等。
101.其中,对于每个字体单元中包含的文字,通过缩减相邻两个文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布矩形块。进一步的细化包括为:根据多个连接排布的字体单元所覆盖的像素区域,构建由多个字体单元组成的文字移动区域;基于多个字体单元各自包含的矩形块,确定文字移动区域内包含的多个矩形块;从文字移动区域内包含的多个矩形块中任选一个矩形块,作为移动参照标杆;在文字移动区域内,按照预设保留间距值,以移动参照标杆为基准,平移其他矩形块以缩减各个矩形块之间的间距,得到重新平移排布的矩形块;根据重新平移排布矩形块,得到经缩排处理后的文字。示例性解释说明如下:
102.如图2示出的未经缩排处理的三个字体单元为例,由于每个字体单元像素尺寸为12*18(宽*高),那么这三个字体单元连接所组成的文字移动区域为3个12*18(宽*高)个像素点所覆盖的区域,即36*18(宽*高)个像素点,从而在该文字移动区域内文字“i”“c”“e”都可以进行平移。
103.需要说明的是,本技术实施例所指的“文字移动”实际为字体单元内文字对应像素点的改变,如图2示出的“i”当前所占像素点为第4-5行和第7-15行上第2和3个像素点,但如果改变“i”所占像素点为第4-5行和第7-15行上第3和4个像素点,那么在视觉上就呈现出“i”相当于是向右移动一个像素点位了。在本技术实施例中,为避免重复赘述文字所占像素点的改变过程,本技术实施例简化为利用文字移动来代替表述。
104.进一步的,本技术实施例是以在文字移动区域内平移矩形块的方式来实现对文字的移动的。并且在平移矩形块的过程中,为了方便于缩减各个矩形块之间的间距,本技术实施例是从中选择一个矩形块作为移动参照标杆,并以该标杆为基准,将其他矩形块向标杆所在方向移动。优选实施方式,可以按照预设保留间距,移动各个其他矩形块,其中,如果每个矩形块内都设置了间距像素区域,那么预设保留间距可以但不限于是为零。
105.例如,如图2所示的文字“i”“c”“e”,可以选择其中任一个文字对应的矩形块为移动参照标杆,从而其他文字对应的矩形块都会向该移动参照标杆移动。需要说明的是,本技术实施例利用移动参照标杆的目的是,利用参照标杆所在位置不改变来缩减各个矩形块之间间距,并不是固定矩形块的位置,因此本技术实施例在保证各个文字对应矩形块之间间距缩排合理的前提下,从整体上各个文字所在位置都是可以改变的,如在保证文字之间固定间距的前提下,可以但不限于是整体移动所有文字的位置向左、向右或者居中偏移。
106.对于经缩排处理后的文字,如图3所示,是以文字“i”所在矩形块为移动参照标杆(即不被移动),其中文字“c”对应的矩形块移动进入到了文字“i”所在的字体单元内,即一个字体单元内可以包含大于1个文字了,并且基于选择的预设保留间距值不同,也可以出现一个文字对应的矩形块移动到了相邻两个字体单元的边界上的情况,例如,两个字体单元中可以包含3个文字。本技术实施例随着移动矩形块,也就实现了对文字的移动,从而达到了在文字移动区域内对各个文字进行重新平移排布,得到经缩排处理后的文字。
107.其次,本技术实施例提供的转换单元12还具体用于:将字体单元所包含的像素点划分成多组,每组像素点为包含了预设整数行的像素点;利用预设数目字节所包含的比特位,逐个存储每组像素点中各个像素点;将利用预设数目字节所存储的每组像素点,表征为二进制数据;将二进制数据转换为十六进制数据,得到每组像素点对应的十六进制数据;根据字体单元包含的多组像素点各自对应表征的十六进制数据,得到字体单元对应表征的十六进制数据,作为字体单元对应芯片可读的字体结构。
108.其中,将字体单元所包含的像素点划分成多组,每组像素点为包含了预设整数行的像素点;利用预设数目字节所包含的比特位,逐个存储每组像素点中各个像素点。具体解释说明如下:
109.本技术实施例提供的芯片为利用4个字节存储一个字体单元,由于每个字节对应8bit,那么4个字节对应32bit,利用4个字节存储一个字体单元所包含像素点的具体实施方法,如下:
110.例如,如图5例举的包含文字“i”的字体单元,如字体单元为12*18(宽*高)个像素点,并且以字体单元为1bit色深(即只有黑和白两色)为例,可以采用以3个字节(24bit)存储每两行像素点(24个像素点)的方式对字体单元进行存储,此时剩下一个字节暂时未被使用。
111.如图7所例举的字库结构,按照由低位到高位,将4字节分为byte0、byte1、byte2和byte3,本技术实施例是采用byte0、byte1、byte2来存储每两行像素点,具体为,对于如图5示出字体单元(包含文字“i”),以每两行像素点为一组,利用byte0、byte1、byte2存储每组像素点,并且是由低位字节对应的比特位开始逐个存储每组像素点中的各个像素点。
112.例如,如图7示出“p”代表像素点,利用bit0~bit11 bit0~bit11存储像素点p0~p11 p0~p11,该p0~p11来自于字体单元(包含文字“i”)内的一行像素点,则p0~p11 p0~p11来自于该字体单元内的两行像素点,即24个像素点。
113.示例性解释说明,基于字体单元为12*18(宽*高)个像素点,则每两行像素点为,1-2行、3-4行、5-6行、7-8行、9-10行、11-12行、13-14行、15-16行和7-18行,得到9组像素点。以1-2行像素点为例,第一组像素点p0~p11逐个是指第1行由左至右遍历到的像素点,第二组像素点p0~p11逐个是指第2行由左至右遍历到的像素点,并且在字库结构中,是由低位字
节对应的比特位开始存储第一组像素点,再利用高位字节的比特位存储第二组像素点。
114.其中,将利用预设数目字节所存储的每组像素点,表征为二进制数据。
115.在本技术实施例中,仍然以利用4字节存储一个字体单元为例,结合如图5例举的字体单元(包含文字“i”)和如图7例举的字体结构所存储的每组像素点,得到如图8示出的字体结构表征二进制数据的示意图,如图8所示,对于利用bit0~bit11 bit0~bit11存储的每组像素点p0~p11 p0~p11,由于本技术实施例例举的字体单元是1bit色深的(即只有黑和白两种颜色),那么可以将文字“i”覆盖像素点标记为“1”,而将未覆盖像素点标记为“0”,那么将得到每组像素点p0~p11 p0~p11对应的二进制数据。
116.例如,以字体单元(包含文字“i”)内第1-2行组成的一组像素点p0~p11 p0~p11为例,由于文字“i”未覆盖到组内任何像素点,则该组像素点对应表征的二进制数据为:“0000,0000,0000,0000,0000,0000”(即24个0);对于该字体单元的第3-4行组成的一组像素点p0~p11 p0~p11,由于文字“i”仅覆盖了组内第4行的第2个、第3个像素点,则该组像素点对应表征的二进制数据为:“0000,0000,0110,0000,0000,0000”。
117.转换模块124,用于将二进制数据转换为十六进制数据,得到每组像素点对应的十六进制数据。
118.在本技术实施例中,对于上述例举的二进制数据“0000,0000,0000,0000,0000,0000”,将它转换为十六进制数据为“000,000”;对于上述例举的二进制数据“0000,0000,0110,0000,0000,0000”,将它转换为十六进制数据为“006,000”。但在此需要说明的是,上述二进制数据仅是在使用了3个字节存储像素点的前提下而得到的,而本技术实施例是利用4个字节存储一个字体单元,这是由于有一个字节未被使用(即如图7示出字库结构中的byte3),因此本技术实施例需要将未被使用的字节中的8个比特位以“0”占位,并且在基于上述3个字节对应表征的十六进制数据,进一步得到4个字节对应表征的十六进制数据,以及再加上表征十六进制数据的标识“0x”,得到:“000,000
”‑
》“0x00,000,000”、“006,000
”‑
》“0x00,006,000”。
119.其中,根据字体单元包含的多组像素点各自对应表征的十六进制数据,得到字体单元对应表征的十六进制数据,作为字体单元对应芯片可读的字体结构。
120.在本技术实施例中,如图8示出的字体结构表征二进制数据的示意图,在图8中左侧示出了每两行像素点表征的二进制数据,以及对应的右侧示出了经数据转换处理后每两行像素点表征的十六进制数据,据此,对于字体单元(包含文字“i”)的12*18(宽*高)个像素点,结合9个每两行像素点表征的十六进制数据,得到的字体结构,作为字体单元对应的芯片可读的字体结构。
121.进一步的,为了更加详细说明当字体单元内文字移动时,芯片可读的字体结构也会改变,本技术实施例还例举了另一个字体结构表征二进制数据的示意图,如图9所示,文字“i”在字体单元内向右移动了一个像素点,仍然以前4行的像素点举例,第1-2行的像素点未涉及到文字覆盖的像素点,则这两行像素点对应表征的十六进制数据仍为“0x00,000,000”,但是第3-4行像素点中文字所覆盖的像素点发生了变化,如图9中它对应表征的十六进制数据为“0x00,00c,000”,并且是数据增大了,对于芯片而言,基于十六进制数据的改变的大小,则可以进一步判断识别文字是左移动或是右移动了。
122.本技术实施例还提供了确定单元14和校验单元15,基于这两个单元,本技术实施
例提供了校验功能,解释说明如下:
123.确定单元14,用于在将字体单元转换为芯片可读的字库结构之后,基于每个字体单元对应的字库结构,从字体单元中确定文字的表征形状;
124.校验单元15,用于校验经缩排处理后的文字与表征形状是否一致,若否,则确定缩排处理异常。
125.在本技术实施例中,提供的校验实施方法主要为:利用经缩排处理后呈现的文字与未缩排前文字表征的形状进行比对,若一致,则表明缩排处理正常,但是若不一致,则可能会存在某几个文字经缩排重叠、缩排间距不正确(即过大)导致无法显示到显示面板中等等类似异常显示情况。其中,本技术实施例所指的文字表征形状是指,由于本技术实施例不涉及文字语义分析,以及不涉及文字放大缩小等处理,而只是文字的移动处理,因此对于芯片而言,显示的文字就相当于是显示的由像素点构成的图形形状而已,因此,本技术实施例通过将缩排处理后的文字形状与缩排处理前文字形状进行比较,就能够简单明了的判断缩排处理是否正确了。
126.进一步的,作为对上述图1所示的装置的应用,本技术实施例提供了一种缩排处理方法。该方法实施例与前述装置实施例对应,为便于阅读,本方法实施例不再对前述装置实施例中细节内容逐一赘述,但应当明确,本实施例中的方法能够对应实现前述装置实施例中的全部内容,该方法如图10所示,对此本技术实施例提供以下具体步骤:
127.201、获取待显示的多个连接排布的字体单元,每个字体单元包含一个文字,字体单元是由像素点组成的矩形单元。
128.202、将字体单元转换为芯片可读的字库结构。
129.203、基于字体单元对应的字库结构,从各个字体单元内读取文字并按照预设缩排规则进行文字之间间距的缩排处理。
130.进一步的,作为对上述图4所示的装置的应用,本技术实施例提供了另一种缩排处理方法。该方法实施例与前述装置实施例对应,为便于阅读,本方法实施例不再对前述装置实施例中细节内容逐一赘述,但应当明确,本实施例中的方法能够对应实现前述装置实施例中的全部内容,该方法如图11所示,对此本技术实施例提供以下具体步骤:
131.301、获取待显示的多个连接排布的字体单元,每个字体单元包含一个文字,字体单元是由像素点组成的矩形单元。
132.302、将字体单元转换为芯片可读的字库结构。
133.本步骤可以细化解释说明为:将字体单元所包含的像素点划分成多组,每组像素点为包含了预设整数行的像素点;利用预设数目字节所包含的比特位,逐个存储每组像素点中各个像素点;将利用预设数目字节所存储的每组像素点,表征为二进制数据;将二进制数据转换为十六进制数据,得到每组像素点对应的十六进制数据;根据字体单元包含的多组像素点各自对应表征的十六进制数据,得到字体单元对应表征的十六进制数据,作为字体单元对应芯片可读的字体结构。
134.303、根据字体单元对应的字库结构,从字体单元中读取文字对应的像素点。
135.304、根据文字对应的像素点,构建文字对应的矩形块,矩形块包含文字。
136.本步骤可以细化解释说明为:从文字对应的像素点中,确定在字体单元的水平方向上间距最大的两个像素点和垂直方向上间距最大的两个像素点;根据水平方向上间距最
大的两个像素点和垂直方向上间距最大的两个像素点,构建对应的矩形像素区域;将矩形像素区域,作为文字对应的矩形块。
137.本技术实施例还提供了优选实施方式为:在将矩形像素区域,作为文字对应的矩形块之前,还包括:基于字体单元的水平方向上预设数目像素点和垂直垂直方向上间距最大的两个像素点,构建对应的间隔像素区域;将间隔像素区域添加到矩形像素区域的单侧,得到经扩充处理后的矩形像素区域。
138.305、对于每个字体单元中包含的文字,通过缩减相邻两个文字对应矩形块之间的间距,在多个链接排布的字体单元所覆盖的像素区域中重新平移排布矩形块。
139.本步骤可以细化解释说明为:根据多个连接排布的字体单元所覆盖的像素区域,构建由多个字体单元组成的文字移动区域;基于多个字体单元各自包含的矩形块,确定文字移动区域内包含的多个矩形块;从文字移动区域内包含的多个矩形块中任选一个矩形块,作为移动参照标杆;在文字移动区域内,按照预设保留间距值,以移动参照标杆为基准,平移其他矩形块以缩减各个矩形块之间的间距,得到重新平移排布的矩形块。
140.306、根据重新平移排布矩形块,得到经缩排处理后的文字。
141.307、在将字体单元转换为芯片可读的字库结构之后,基于每个字体单元对应的字库结构,从字体单元中确定文字的表征形状。
142.308、校验经缩排处理后的文字与表征形状是否一致。
143.309a、若校验经缩排处理后的文字与表征形状不一致,则确定缩排处理异常。
144.309b、校验经缩排处理后的文字与表征形状一致,则确定缩排处理不存在异常。
145.综上所述,本技术实施例提供了一种缩排处理装置及方法,利用本技术实施例提供的装置,将获取到待显示的多个连接排布的字体单元,转换为芯片可读的字库结构,从而方便于芯片从各个字体单元中读取文字,并采用预设缩排规则处理这些文字之间间距,以得到经缩排处理后的文字。优选实施方式,对于预设缩排规则,本技术实施例采用但不限于是获取各个文字覆盖像素点组成的矩形块,并以缩减各个矩形块之间间距以实现对文字的缩排处理,此外本技术实施例还提供了校验实施方法,即将缩排前后的文字作为图形形状进行比对,以达到校验缩排处理是否发生异常的目的。相较于现有技术,本技术相当于是以芯片内软件缩排处理逻辑实现对文字的缩排处理,解决了因需要硬件算法模块进行缩排处理导致增加芯片制造成本的问题,本技术以软件缩排处理逻辑替代硬件算法模块,从而不增加芯片制造成本的前提下,也能达到较佳的缩排处理效果,节约处理成本,更加利于应用生产。
146.本技术实施例提供的缩排处理装置包括处理器和存储器,上述获取单元、转换单元和缩排处理单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
147.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来利用芯片内的软件缩排处理逻辑替代硬件算法模块以实现对文字的缩排处理,从而不增加芯片制造成本的前提下,也能达到较佳的缩排处理效果,节约处理成本,更加利于应用生产。
148.本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的缩排处理方法。
149.本技术实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的缩排处理方法。
150.本技术是参照根据本技术实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
151.在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
152.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
153.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
154.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
155.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献