- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
字符的点阵显示原理及实现.pdf
字符的点阵显示原理及实现
武汉大学遥感信息工程学院,屈伟军
首先介绍什么是点阵字库。需要理解的是,点阵字库是一个数据文件,在这个数据文件里
面保存了所有字符的点阵数据。至于什么是点阵,我想大家都知道。如果使用过 “文曲星”之
类的电子辞典,在那个液晶显示屏上就可以明显地看出 “点阵”的痕迹所在。PC 机上也是如
此,字符是由点阵来组成的,不同的是PC 机显示器的显示分辨率更高,高到了我们肉眼无法
区分的地步,因此“点阵”的痕迹也就不那么明显了。点阵从本质上讲就是单色位图,它使用
一个比特位来表示一个点,如果某个比特位为0,表示该位置没有点,如果为1 则表示该位置
有点。那么点阵字符的数据存放细节到底是怎么样的呢?其实十分简单,举个例子最能说明问
题。比如说16×16 的字符点阵,一行有16 个点,需要用16 个比特即2 个字节来存放。第一行
的前八个点的数据存放在点阵数据的第一个字节里面,第一行的后面八个点的数据存放在点阵
数据的第二个字节里面,第二行的前八个点的数据存放在点阵数据的第三个字节里面……以此
类推。一个点阵共有16 行,这样我们马上就可以计算出存放一个点阵总共需要2×16 = 32 个
字节。看看下面这个图形化的例子:
0000000100000000000000000000010000000
0000000001010001010101010101010100000
0000000000010000000000000000010000000
0000010000000000010000000000010000000
0000000101000000010000000000010000000
0000000001000000010000000001000000000
0000000000000100000100000001000000000
0000000000010000000100000100000000000
0000000001000000000001000100000000000
0000010101000000000000010000000000000
0000000001000000000001000100000000000
0000000001000000000100000001000000000
0000000001000000010000000000010000000
0000000001000001000000000000010101000
0000000000000100000000000000000100000
0000000000000000000000000000000000000
可以看出这是一个宋体“汉”字的点阵,我们可以写出这个点阵的点阵数据是:0x40,0x08,
0x37,0xfc,0x10,0x08……当然,写这个确实很麻烦,所以我不再继续下去。我这样做,只
是为了说明在点阵字库中,每一个点阵的数据就是按照这种方式存放的。
当然也存在着不规则的点阵,这里说的不规则,指的是点阵的宽度不是 8 的倍数,比如
12×12 的点阵 (如图2 所示)。那么这样的点阵数据又是如何存放的呢?其实也很简单,每一
行的前面8 个点存放在一个字节里面,每一行剩下的4 个点也使用一个字节来存放。也就是说,
剩下的4 个点将占用一个字节的高4 位,而这个字节的低4 位没有使用,全部都为0 。这样做
当然显得有点浪费,不过却能够便于我们进行存放和寻址。对于其他不规则的点阵,也是按照
这个原则进行处理的。这样我们可以得出一个M×N 的点阵所占用的字节数为(M+7)/8×N 。
图1 字
文档评论(0)