点阵汉字的原理及应用

上传人:F****n 文档编号:104579788 上传时间:2019-10-09 格式:DOC 页数:7 大小:407KB
返回 下载 相关 举报
点阵汉字的原理及应用_第1页
第1页 / 共7页
点阵汉字的原理及应用_第2页
第2页 / 共7页
点阵汉字的原理及应用_第3页
第3页 / 共7页
点阵汉字的原理及应用_第4页
第4页 / 共7页
点阵汉字的原理及应用_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《点阵汉字的原理及应用》由会员分享,可在线阅读,更多相关《点阵汉字的原理及应用(7页珍藏版)》请在金锄头文库上搜索。

1、 点阵汉字原理与应用一汉字的编码 由于在电脑中,所有的数据都是以0和1保存的。因此,想要用计算机来显示汉字前提就是要将汉字以二进制,即0和1形式进行编码。GBK内码在英文的显示操作中,一个字母、数字及字符均由1个ASCII码表示,并且由于英文字符种类相对较少,故其ASCII码是小于等于127的。而汉字由于种类繁多,每个汉字有2个ASCII码构成,这两个ASCII码称为汉字的GBK内码,通常用十六进制表示。例如,“啊”的GBK内码=B0 A1。汉字的GBK内码一定大于A0H,即160,目的是为了防止与英文的ASCII码产生冲突。区位码 为了使每一个汉字有一个全国统一的代码,1980年,我国颁布了

2、第一个汉字编码的国家标准: GB2312-80信息交换用汉字编码字符集基本集,这个字符集是我国中文信息处理技术的发展基础,也是目前国内所有汉字系统的统一标准。由于国标码是四位十六进制,如汉字的GBK内码,为了便于交流,大家常用的是四位十进制的区位码。所有的国标汉字与符号组成一个9494的矩阵(见图1所示)。在此方阵中,每一行称为一个区,每一列称为一个位,因此,这个方阵实际上组成了一个有94个区(区号分别为0 1到94)、每个区内有94个位(位号分别为01到94)的汉字字符集。一个汉字所在的区号和位号简单地组合在一起就构成了该汉字的区位码。区位码和GBK内码之间可以相互转换,区位码=GBK内码-

3、A0H。例如:“啊”的GBK内码=B0 A1,则其区码=B0-A0=10H=16,而其位码=A1-A0=01,所以“啊”的区位码=16 01,为4位十进制码。在区位码中,01-09区为682个特殊字符,1687区为汉字区,包含6763个汉字 。其中16-55区为一级汉字(3755个最常用的汉字,按拼音字母的次序排列),56-87区为二级汉字(3008个汉字,按部首次序排列)。因此利用区位码便可实现对6000多个汉字的提取。 图 1汉字的区位码表2、 点阵字库结构点阵字库储存 在汉字的点阵字库中,每个字节的每个位都代表一个汉字的一个点,每个汉字都是由一个矩形的点阵组成,0代表没有,1代表有,将0

4、和1分别用不同颜色画出就形成了一个汉字。常用的点阵矩阵有12*12,14*14,16*16三种字库。16*16点阵字库(见图2所示)对于16*16的矩阵来说,它所需要的位数共是16*16=256位,每个字节为8位,因此每个汉字都要用256/8=32个字节来表示。即每两个字节代表一行的16个点,共需16行(见图3所示)。 图 2 16*16点阵字库(部分) 图 3 汉字“中”16*16点阵示意 14*14与12*12点阵字库 对于14*14和12*12的字库,理论上计算,它们所需要的点阵分别为(14*14/8)=25,(12*12/4)=18个字节,但是,如果按照这种方式来储存,那么取点阵和显示

5、时,由于每一行都不是8的整数倍就会涉及到点阵的计算处理问题,会增加程序的复杂度,降低程序的效率。为了解决这个问题,有些点阵字库会将14*14和12*12的字库按16*14和16*12来存储,即,每行还是按两个字节来存储,但是14*14的字库,每两字节的最后4位是没有使用,这个根据不同的字库会有不同的处理方式,所以在使用字库时要注意这个问题,特别是14*14的字库。二、点阵汉字的获取利用区位码获取汉字汉字的点阵字库是根据区位码的顺序进行储存的,因此我们可以根据区位码来获得一个字库的点阵。计算公式如下: 点阵起始位置=(区码-1)*94+(位码-1)*汉字点阵字节数对于16*16点阵字库,公式即为

6、: 点阵起始位置=(区码-1)*94+(位码-1)*32获取点阵起始位置后就可以从这个位置开始读取出一个汉字的点阵。利用GBK内码获取汉字 由于区位码和汉字的内码可以相互转换,自然也可以用GBK内码来获取汉字。三、利用010Editor及画图工具详细演示汉字“点”的点阵过程 1、 获取“点”字的GBK内码 新建一个文本文档,输入“点”字,保存。然后用十六进制编辑器010Editor打开该文本文档(见图4所示),得到汉字“点”的GBK内码为B5 E3。 图 4 汉字“点”GBK内码2、在16*16点阵字库中获取汉字“点”“点“字的区码=B5-A0=15H=21:;”点“字的位码=E3-A0=43

7、H=67。从而“点”字在字库中的起始位置=(21-1)*94+(67-1)*32=62272=F340H。用010Editor查看16*16点阵字库,按住键盘ctrl+g,输入F340,定位到此处。选中当前一行及下一行,选菜单edit-copy as-copy as hex text,粘贴到文本文件中,得到“点”的点阵数据(见图5所示)。 图 5 汉字“点”的点阵数据获取3、 在16*16表格中点阵汉字“点” 得到汉字“点”的点阵数据如下: 02 00 02 00 02 08 03 FC 02 00 02 10 3F F8 20 10 20 10 20 10 3F F0 00 00 29 10

8、 24 C8 44 44 80 04每两个字节可以确定一行,用画图工具制作16*16表格,将上述十六进制点阵数据转化为二进制后即可描出该字的笔画。例如以两个字节为一组,第一组十六进制数02 00转化为二进制为0000 0010 0000 0000,则第一行只需将第七个方格涂黑;第四组十六进制数03 FC转化为二进制为0000 0011 1111 1100,则第四行需将第7-14个方格均涂黑。(见图6所示) 图 6 汉字“点”点阵过程示意按照相同方法可完成“点”字的点阵(见图7所示)。 图 7点阵汉字“点” 此为人工模拟汉字的点阵过程,在实际的计算机操作中,通过编写相应的程序即可让计算机自动完成

9、如上点阵过程。4、 点阵汉字的应用点阵汉字在计算机中的应用 点阵汉字原理使得计算机可以显示超过6000个的汉字,并且程序简单,速度快,运行良好,为计算机的使用者提供了许多便利。点阵汉字在LED点阵显示屏上的应用 LED点阵显示的原理与上面演示的点阵过程是相同的,只是将在对应位置是否涂色改变为对应位置上的灯是否亮起。点阵汉字在LED显示屏中的应用的简单原理如下:LED点阵的行线上加载扫描通选信号,列线上为数据输入,当行线上有一负脉冲选通信号时,列端的四位数据中为“1”的发光二极管导通点亮(见图8所示)。显示采用逐行扫描方式,数据断不断输入数据,行扫描按顺序逐行选通,扫描一个周期(4次)产生一帧画

10、面。 图 8 4*4共阴极LED阵列 农村精神文明建设是新农村建设的重要任务,是全面建设小康社会的重要内容。根据市文明委相关文件精神要求,现就在全镇范围内深入开展以“乡风文明”和“村容整洁”为主题的“四创”活动several group number, then with b a, =c,c is is methyl b two vertical box between of accurate size. Per-23 measurement, such as proceeds of c values are equal and equal to the design value, then

11、the vertical installation accurate. For example a, b, and c valueswhile on horizontal vertical errors for measurement, General in iron angle code bit at measurement level points grid errors, specific method is from baseline to methyl vertical box center line distance for a, to b vertical box distance for b, list can measured

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号