怎样利用点阵转换字库

怎样利用点阵转换字库

ID:47521483

大小:32.00 KB

页数:5页

时间:2019-09-13

怎样利用点阵转换字库_第1页
怎样利用点阵转换字库_第2页
怎样利用点阵转换字库_第3页
怎样利用点阵转换字库_第4页
怎样利用点阵转换字库_第5页
资源描述:

《怎样利用点阵转换字库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、怎样使用点阵字库(转)前不久,在网上看到一个生成点阵字的网站.觉得很有意思!到底什么是点阵字,点阵字和字模之间有什么关系?让我们先看一个点阵汉字和一个英文字母:这就是点阵字,也就是根据字符的字模用符号画出来的,当然你可以把*号#号改成其它的任何符号都可以.是不是觉得很有意思了?汉字内码:我们都知道,英文只有少数的几十个字符,在计算机中用一个字节可以很容易的表示出来(也就是ASCII码);而汉字由于结构本身的原因,数量很大,常用的也有几千个.显然计算机中按照英文字符的方式对处理汉字是不可取的.由是前人们就将ASCII表的高128位很少用到的数值以两个为一组

2、来表示汉字,这就是汉字的内码.而剩下的低128位则留给英文字符使用,即英文的内码.看一个C程序示例:程序代码main()unsignedchar*s,*e="A",*c="王";clrscr();printf("Englishchar=");s=e;while(*s!=0)printf("=,",*s);s++;printf("Chineasechar=");s=c;while(*s!=0)printf("=,",*s);s++;getch();编译运行以后,输出的结果为:Englishchar=65,Chineasechar=205,245,查AS

3、CII码字符表,很容易得到A的ASCII码为65.我们可以查ASCII码表,得到出ASCII码对应的字符,那我们有什么办法来知道一个汉字内码对应的汉字了?让我们先来认识一下区位码:1981年5月,我国国家标准总局颁布了《信息交换用汉字编码字符集》(GB2312-80),简称国家标准汉字编码,也叫国标码.国标码共收进标准字符7445个.其中一级汉字3755个,二级汉字3008个,共计6763个汉字.由于汉字的字符多,一个字节(即8位二进制代码)不足以表示所有的常用汉字.汉字国标码的每个汉字或符号在计算机中都使用2个字节(16位二进制)代码来表示.在GB23

4、12-80代码表中,纵向分为0~93,共94行.将行号称为区号,列号称为位号,分别有94个区和94个位.区号和位号用十进制表示,不足两位前面补0.这样每个汉字或符号都可用4位十进制表示.这就是我们常说的区位码.每一区共有94个汉字,而位记录该汉字在该区中的具体位置.(记得我们以前读书的时候,报考计算机考试,填写姓名都要我们用区位码填,我们都拿着自己的姓名一个个去查,我们查的那个东东就是区位码.现在想想,真是心寒呀.还好,我后来就没有查了,弄了个excel的宏.把班上人的姓名全部放到一个excel中,然后一点鼠标,哈哈……区位码全自动出来了).现在我们知道

5、,可以从区位码得到汉字,也可以从汉字反查出区位码.那么我们如何从内码得到区位吗?汉字内码与区位码之间有一个简单的数学关系:内码高字节=区码+A0H=区码+160内码低字节=位码+A0H=区码+160这个转换关系,我也不清楚原因,有谁知道还望指点.网上的大师们说这样转换,咱们就这样转换吧.我们刚刚输出"王"的内码为:205(高字节),245(低字节).由上面的换算关系,可以得到"王"字的区位码为:区码=205-160=45位码=245-160=85查一下区位码表,4585所表示的汉字正好是"王".也可以打开输入法,选择内码输入法,然后选择区位码,输入458

6、5,就会输出"王"字.汉字字模:现在让我们来认识一下什么是字模,所谓字模就是是汉字(或者字符)的形态.字模中保存了汉字的点阵信息,记录组成一个字符的点在何处显示,在何处不显示.我们只要得到汉字的字模,我们就可以很容易的程序来控制,把这个字符画出来.我们刚刚得到的仅仅是汉字的内码,并根据汉字内码得到区位码,由区位码查表得到汉字.那么我们如何来得到汉字的字模了?用过UCDOS(或者CCDOS,估计现在只有少数人还知道UCDOS是什么东东)的人应该知道,通过UCDOS可以让DOS系统下正确的显示中文目录.不通过UCDOS之类的软件,在纯DOS下,我们看到的中文

7、目录会是一堆的乱码,而英文目录能够正确显示,这是什么原因了.这是因为,英文的字模信息是一般固化在ROM里.中文字模信息一般记录在一个专门的文件中,这个文件在UCDOS和CCDOS中都有,文件名是HZK16.也就是16x16点阵的汉字字模信息,所谓16x16,就是说这个汉字在横向有16个点,和纵向16个点的区域里显示.还有24x24,32x32等.我们也可以在UCDOS下找到英文字模的信息文件,文件名是ASC16,这里记录了英文字符的字模信息.ASC16文件记录的英文字符是8x16点阵的.这些记录字符字模信息的文件通常也叫字库文件.ASC16文件的大小刚好

8、为4K(4,096个字节),每一英文字符横向有8个点,纵向有16个点.也就是说要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。