社区
VB基础类
帖子详情
GBK字库寻址公式?
星空独行
2010-07-21 02:35:44
急需GBK的12*12点阵字库的寻址公式?
...全文
333
5
打赏
收藏
GBK字库寻址公式?
急需GBK的12*12点阵字库的寻址公式?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vmalloc
2011-04-25
打赏
举报
回复
[Quote=引用 1 楼 qlming 的回复:]
12*12点阵字库中,12*12/8=18个字节一个汉字,18个字节中每个BIT代表一个点上是否有显示。
GB2312的12点阵库寻址如下:
假设某个汉字内码为ABCD(AB为区码)
则此汉字在点阵中的地址为:
ADDRESS=[(AB-0xa1)*94+(CD-0xa1)]*18
其中94和18为十进制。
如果你确定点阵是GBK的,我想应该上面的应该改为
ADDRESS=[……
[/Quote]
不知道你的偏移方式是否正确 但是一个12*12点阵占18个字节肯定是错误的
12*12 在gb2312字库中占24个字节
16*16 在gb2312中占用 16*16/8=32字节 但是 12*12字库不能简单的用这个除法来计算的
应该是12*16/8 = 24字节 这个我已经实现了
贝隆
2010-07-22
打赏
举报
回复
学习了。。。
make_sail
2010-07-21
打赏
举报
回复
真是学习了呀!
浅蓝马
2010-07-21
打赏
举报
回复
不好意思,上面写错了,
GBK的话,应该是:
ADDRESS=[(AB-0x81)*191+(CD-0x40)]*18
浅蓝马
2010-07-21
打赏
举报
回复
12*12点阵字库中,12*12/8=18个字节一个汉字,18个字节中每个BIT代表一个点上是否有显示。
GB2312的12点阵库寻址如下:
假设某个汉字内码为ABCD(AB为区码)
则此汉字在点阵中的地址为:
ADDRESS=[(AB-0xa1)*94+(CD-0xa1)]*18
其中94和18为十进制。
如果你确定点阵是GBK的,我想应该上面的应该改为
ADDRESS=[(AB-0x81)*94+(CD-0x40)]*18
只是现在好像GBK点阵字库很难找到吧,
一般都是GB2312的。
9节课征服「字符编码」
ASCII、GB2312、
GBK
、GB18030Unicode、UTF-8、UTF-16、UTF-32
GBK
/
GBK
2312
字库
寻址
及使用原理
在这里主要描述一下GB2312的
字库
寻址
原理,同时通过
寻址
的过程了解一下三者的具体含义。 首先我们使用UltraEdit打开一个文件并写入一个汉字“瑞”,通过软件的16进制编辑功能我们可以看到瑞的机内码为0xC8F0,如...
GB2312、
GBK
汉字
字库
偏移地址的计算
对于
GBK
字库
和GB2312
字库
,他们的解码部分部分略有不同,这个区别主要是由于他们的编码方式不同引起的,对于
GBK
字库
,解码的方式如下: qh=*code; ql=*(++code); if(ql) ql -= 0x40; else ...
GB2312/
GBK
编码规则及单片机汉显
字库
算法
最近整理旧物时,翻到了5年前的毕业设计,翻翻觉得还有些用,写... 在一般的单片机汉显系统中,都会用到GB2312
字库
,也有少数的需要
GBK
字库
。 英文字符在PC机中以单字节表示,汉子以最高位为1的双字节“机内码”表示,
GBK
与UNICODE编码互转
对经常玩单片机的人员来说都知道怎样通过软件制作
GBK
字库
,再使用
GBK
公式
计算处理在LCD屏上显示中文汉字,如果不知道
GBK
制作软件及方式的话可以通过文末链接下载学习;这里主要是介绍UNICODE与
GBK
的相互转化,在一些...
VB基础类
7,763
社区成员
197,609
社区内容
发帖
与我相关
我的任务
VB基础类
VB 基础类
复制链接
扫一扫
分享
社区描述
VB 基础类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章