OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3158|回复: 6

关于字库格式的问题?

[复制链接]

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
发表于 2018-8-29 18:01:28 | 显示全部楼层 |阅读模式
最后点击创建,就可以开始生成我们需要的字库了(.DZK 文件)。
具体设置如图 45.1.3 所示:
图 45.1.3 生成 GBK16*16 字库的设置方法
注意:电脑端的字体大小与我们生成点阵大小的关系为:
fsize=dsize*6/8
其中,fsize 是电脑端字体大小,dsize 是点阵大小(12、16、24 等)。所以 16*16 点阵大小
对应的是 12 字体。
生成完以后,我们 把文件名和后缀改成:GBK16.FON
为什么是.FON,?为什么不可以是bin文件呢?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

35

主题

560

帖子

2

精华

资深版主

Rank: 8Rank: 8

积分
17784
金钱
17784
注册时间
2018-3-3
在线时间
523 小时
发表于 2018-8-29 18:35:35 | 显示全部楼层
我认为是方便区分。。。_(:3J∠)_
/*
*
*
*
*
*
*/
回复 支持 反对

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2018-8-29 18:42:27 | 显示全部楼层
可以是.bin文件 ,也可以是.ATK这样的文件,这样一来你就要改汉字显示例程了。1楼也说得对
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
 楼主| 发表于 2018-8-30 08:15:34 | 显示全部楼层
本帖最后由 ssssssssssss 于 2018-8-30 14:28 编辑
peng1554 发表于 2018-8-29 18:42
可以是.bin文件 ,也可以是.ATK这样的文件,这样一来你就要改汉字显示例程了。1楼也说得对

我的gb2312字库文件本来是bin文件,怎么分析这个bin文件?
ffd.png
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
 楼主| 发表于 2018-8-30 08:16:47 | 显示全部楼层
本帖最后由 ssssssssssss 于 2018-8-30 16:54 编辑
Psheng 发表于 2018-8-29 18:35
我认为是方便区分。。。_(:3J∠)_


大神,帮看看四楼的问题,以下是搜到的资料,

https://blog.csdn.net/zixiao217/article/details/52856814

GB2312编码范围:A1A1-FEFE,其中汉字的编码范围为B0A1-F7FE,第一字节0xB0-0xF7(对应区号:16-87),第二个字节0xA1-0xFE(对应位号:01-94)

GB2312编码是第一个汉字编码国家标准,由中国国家标准总局1980年发布,1981年5月1日开始使用。GB2312编码共收录汉字6763个,其中一级汉字3755个,二级汉字3008个。同时,GB2312编码收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个全角字符。

分区表示
GB2312编码对所收录字符进行了“分区”处理,共94个区,每区含有94个位,共8836个码位。这种表示方式也称为区位码。
01-09区收录除汉字外的682个字符。
10-15区为空白区,没有使用。
16-55区收录3755个一级汉字,按拼音排序。
56-87区收录3008个二级汉字,按部首/笔画排序。
88-94区为空白区,没有使用。
举例来说,“啊”字是GB2312编码中的第一个汉字,它位于16区的01位,所以它的区位码就是1601。

双字节编码
GB2312规定对收录的每个字符采用两个字节表示,第一个字节为“高字节”,对应94个区;第二个字节为“低字节”,对应94个位。所以它的区位码范围是:0101-9494。区号和位号分别加上0xA0就是GB2312编码。例如最后一个码位是9494,区号和位号分别转换成十六进制是5E5E,0x5E+0xA0=0xFE,所以该码位的GB2312编码是FEFE。


01 0 1 2 3 4 5 6 7 8 9
0     、 。 · ˉ ˇ ¨ 〃 々
1 — ~ ‖ … ‘ ’ “ ” 〔 〕
2 〈 〉 《 》 「 」 『 』 〖 〗
3 【 】 ± × ÷ ∶ ∧ ∨ ∑ ∏
4 ∪ ∩ ∈ ∷ √ ⊥ ∥ ∠ ⌒ ⊙
5 ∫ ∮ ≡ ≌ ≈ ∽ ∝ ≠ ≮ ≯
6 ≤ ≥ ∞ ∵ ∴ ♂ ♀ ° ′ ″
7 ℃ $ ¤ ¢ £ ‰ § № ☆ ★
8 ○ ● ◎ ◇ ◆ □ ■ △ ▲ ※
9 → ← ↑ ↓ 〓

02 0 1 2 3 4 5 6 7 8 9
0   ⅰ ⅱ ⅲ ⅳ ⅴ ⅵ ⅶ ⅷ ⅸ
1 ⅹ ? ? ? ? ? ? ⒈ ⒉ ⒊
2 ⒋ ⒌ ⒍ ⒎ ⒏ ⒐ ⒑ ⒒ ⒓ ⒔
3 ⒕ ⒖ ⒗ ⒘ ⒙ ⒚ ⒛ ⑴ ⑵ ⑶
4 ⑷ ⑸ ⑹ ⑺ ⑻ ⑼ ⑽ ⑾ ⑿ ⒀
5 ⒁ ⒂ ⒃ ⒄ ⒅ ⒆ ⒇ ① ② ③
6 ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ? ? ㈠
7 ㈡ ㈢ ㈣ ㈤ ㈥ ㈦ ㈧ ㈨ ㈩ ?
8 ? Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ
9 Ⅹ Ⅺ Ⅻ ? ?




回复 支持 反对

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2018-8-30 09:12:28 | 显示全部楼层
ssssssssssss 发表于 2018-8-30 08:15
我的gb2312字库文件本来是bin文件,我把它转化成hex文件,怎么分析这个hex文件?10000开头的行是哪个字?

这个没有去分析了。hex文件可以用STLINK utility软件去读取
1.jpg
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
 楼主| 发表于 2018-8-30 09:30:03 | 显示全部楼层
本帖最后由 ssssssssssss 于 2018-8-30 14:27 编辑
peng1554 发表于 2018-8-30 09:12
这个没有去分析了。hex文件可以用STLINK utility软件去读取

或者说不能看hex,只能看bin,可能刚用软件转出来的bin是比较纯的字模数据
ffd.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 11:55

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表