一种基于发电机组控制器的字库点阵生成方法与流程

文档序号:11133291阅读:347来源:国知局

本发明涉及一种字库点阵的生成方法,具体的说,涉及了一种基于发电机组控制器的字库点阵的生成方法。



背景技术:

发电机组控制器的界面显示中的汉字部分是以点阵的方式存在单片机的flash中的,需要取汉字的字模点阵,根据液晶点阵的大小,字体往往需要12*12、24*24、32*32等尺寸,使用时要设置字体的大小,逐字进行去模,然后整理成自己需要的格式下到自己的程序中,方法繁琐且不易实现。

为了解决以上存在的问题,人们一直在寻求一种理想的技术解决方案。



技术实现要素:

本发明的目的是针对现有技术的不足,从而提供一种易于实现、使用方便快捷的基于发电机组控制器的字库点阵的生成方法。

本发明的目的是通过下面的技术方案来实现的:一种基于发电机组控制器的字库点阵生成方法,包括以下步骤:

步骤1:确定要生成字库的字体及大小,所述大小为每个字的点阵所占的数据位数;

步骤2:先新建一个Pictrue1控件,在Pictrue1控件上新建一个Label标签,其中,所述Label标签的位置设为(0,0)、AutoSize属性设置为true、字体大小设置为步骤1的字体大小;然后将要转化的字显示在一个label标签上;再将label标签放在一个Picture上,通过Picture.Point(x,y)方法得到(x,y)坐标点的RGB值,如果值为0,说明是该字上的点阵,根据所在字节位的位置计算字节数组的大小,V1 = V1 + 2 ^ (x),低位在前高位在后;

步骤3:通过行列式的扫描方式,得到该字的点阵,并存入到dat文件中。

基于上述,步骤3中,所述行列式的扫描方式:先扫描行,每8个点为一个单位,从左往右、从上向下进行扫描,先扫描低位再扫描高位,把这8个点作为一个字节存到一个字节数组中,扫描所有的字符集,得到该字的点阵,然后将字的点阵存入到dat文件中。

本发明相对现有技术具有突出的实质性特点和显著的进步,具体的说,本发明提供的生成方法易于实现,能够将要生成字库的字符集生成到一个dat文件中,等到使用的时候,通过该字的位置信息查找到该字的点阵,即可直接使用,方便快捷。

具体实施方式

下面给出具体实施方式对本发明做进一步的详细描述:

一种基于发电机组控制器的字库点阵生成方法,包括以下步骤:

步骤1:确定要生成字库的字体及大小,所述大小为每个字的点阵所占的数据位数;比如要生成24*24大小的宋体字体,则计算每个字体需要的点阵数,24*24需要576个点,即72个字节;Unicode码字符集从0x3000到0x9FFF的一共28672个字符,需要28672*72个字节;

步骤2:先新建一个Pictrue1控件,在Pictrue1控件上新建一个Label标签,其中,所述Label标签的位置设为(0,0)、AutoSize属性设置为true、字体大小设置为步骤1的字体大小;然后将要转化的字显示在一个label标签上;再将label标签放在一个Picture上,通过Picture.Point(x,y)方法得到(x,y)坐标点的RGB值,如果值为0,说明是该字上的点阵,根据所在字节位的位置计算字节数组的大小,V1 = V1 + 2 ^ (x),低位在前高位在后;

步骤3:通过行列式的扫描方式,先扫描行,每8个点为一个单位,从左往右、从上向下进行扫描,先扫描低位再扫描高位,把这8个点作为一个字节存到一个字节数组中,扫描所有的字符集,得到该字的点阵,然后将字的点阵存入到dat文件中。

使用的时候,根据字符的Unicode码减去0x3000,得到该字符在dat文件中的位置,然后读出字符的点阵,即可直接使用,方便快捷。

最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1