求高人指点,GBK点阵字库的计算公式

2019-12-10 18:13发布

GBK全文本TXT.rar (43.58 KB, 下载次数: 93) 2012-11-19 20:16 上传 点击文件名下载附件
这2个文本文件是按照编码顺序排列的,gbk-gb18030.txt 是 根据 中国GBK码与Unicode码及原字形对照表.txt去掉无关字符排列的.
现在想用牧马字符这类的 文本文件转 点阵工具来转换,
转换结果成功,但是 计算汉字在 点阵库中的地址公式不明

网上找了个这个
我们把第一个字节代表的意义称为区,那么GBK 里面总共有126 个区(0XFE-0X81+1 ),
每个区内有 190 个汉字(0XFE-0X80+0X7E-0X40+2 ),总共就有 126*190=23940 个汉字。我
们的点阵库只要按照这个编码规则从 0X8140  开始,逐一建立,每个区的点阵大小为每个汉字
所用的字节数*190。这样,我们就可以得到在这个字库里面定位汉字的方法:

        当GBKL<0X7F 时:Hp=((GBKH-0x81)*190+GBKL-0X40)*(size*2) ;
        当GBKL>0X80 时:Hp=((GBKH-0x81)*190+GBKL-0X41)*(size*2) ;

    其中GBKH、GBKL 分别代表GBK 的第一个字节和第二个字节(也就是高位和低位) ,size
代表汉字字体的大小(比如16 字体,12 字体等),Hp 则为对应汉字点阵数据在字库里面的起
始地址(假设是从0 开始存放) 。

结果发现,字库前面部分,也就是 gb2312字符之前的,编号 0-6079 的汉字 正常
之后的,就错乱了,不知道公式了
求大侠指点
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
skynet
1楼-- · 2019-12-10 20:52
取点阵Mold.rar (29.21 KB, 下载次数: 86) 2012-11-19 20:21 上传 点击文件名下载附件

这个是牧马字模软件
hwtech
2楼-- · 2019-12-10 23:50
洋洋啥都放送出来啦,顶顶,要猛顶
skynet
3楼-- · 2019-12-11 00:58
呀,没人弄过这个呀????????
hwtech
4楼-- · 2019-12-11 01:29
skynet 发表于 2012-11-20 08:25
呀,没人弄过这个呀????????

下载也不顶帖?哈哈
顶帖不会怀孕滴
cheungman
5楼-- · 2019-12-11 01:32
 精彩回答 2  元偷偷看……
skynet
6楼-- · 2019-12-11 06:26
cheungman 发表于 2012-11-20 17:04
也许你的算法有问题, 试试下边的

//GBK算法

请问大师,按照你的说法,是不是说,那个文本文件里面,要把属于GB2312的字符单独出来,GBK文本里面,不包含GB2312字符
这样搞工作量大了啊.......

一周热门 更多>