搜索
bottom↓
回复: 161

《字库制作详细教程》,同时奉上找到的几篇关于国标字库的一些编码有关资料!---请波仔

  [复制链接]

出0入0汤圆

发表于 2010-12-24 15:17:35 | 显示全部楼层 |阅读模式
记得以前弄字库时,一次次的操作不对,总得不到字库,然后就放下了。后来在做人脸识别时,突然脑子一闪,原来是这样操作的,呵呵,终于生成了自己想要的字库!!唉,看来菜鸟就是菜鸟。于是就把这个过程记下来,整理成笔记,看到论坛里也有不少网友弄不对的,就把这个笔记放出来,给那些和我一样的菜鸟分享一下该怎么操作才是正确的。
    由于这些操作属菜鸟级的,所以,请高手们高抬贵手,看了之后不要说这么笨,这都不会,或者会了的就不用看了。
    因为就是波仔的一个方法,所以请波仔进贴授权,如果波仔不同意,请armok删贴。


                                                  《字库制作详细教程》</font>

    很多时候,我们会用到字库,平时用到字库一般是把用到的汉字用取模软件按照自己的取模方式得到汉字的编码数组,然后把这些编码放在单片机的Flash里,用时调用出来显示。但是如果我们要用到很多的汉字时,这种方法就不可取了,占用太多的Flash空间,然后我们会想到把字库放在SD卡或者是U盘里,用到时再从存储介质里读出来,这样,我们就可以显示很多汉字。
   
    下面是字库的制作方法,首先感谢一个人,就是本坛的章其波大虾,其实就是他的一个贴子里的方法,只是他那个太专业了,一般的人看得不是很懂,所以我把它整理成了这个图文并茂的,方便各大网友,也是方便自己查看。

    1、首先,好比起房子,得有源材料,用到以下3个文件:
        [color=#0000 FF ](1) 取点阵Mold.exe   
       (2) ziku.txt   
       (3) ziku.exe </font>

        取点阵Mold.exe 是“牧马字模0.84测试版”取模软件
        ziku.txt 是按顺序写有8178个汉字和字符的txt文档
        ziku.exe 是一个小程序,配合“牧马字模0.84测试版”生成bin文件

    2、打开“牧马字模0.84测试版”取模软件,其界面如下所示:
   
(原文件名:QQ截图未命名1.jpg)

    3、在工具栏处点“打开”按钮,打开ziku.txt文件,然后根据自己的需要,设置想要的取模方式,然后点工具栏上的“输出”按钮 并等待其完成,完成后会在取模软件所在路径生成了一个temp.txt文件,修改这个文件名,比如现在我是按照[color=#0000 FF ]“宋体、点阵数为16、字重为4、取模为为16*16、对齐设置为左上、方向设置为横向取模,高位在左”的方式来取的字模,也就是我平时TFT常用的一种字模,改文件名为st16x16.txt 。

    4、为了生成的方便,我们在D盘根目录下新建一个文件夹,名称就叫ziku吧,然后,把ziku.exe 和 st16x16.txt复制一份到这个文件夹里。

    5、打开命令窗口:“开始”->“运行”->“cmd”,如下图所示:
   
(原文件名:QQ截图未命名2.jpg)
    然后用cd命令进入到我们刚刚建的ziku文件夹下,输入命令如下图所示:
   
(原文件名:QQ截图未命名3.jpg)

    6、输入命令,生成字库文件,输入命令如下图所示:
   
(原文件名:QQ截图未命名4.jpg)
    为什么输入这样的命令,如果大家对main函数参数argc和argv有所了解的话,即int main(int argc, char* argv[]) 这一主函数,这是很容易理解的,第一个参数是命令行输入参数的个数,第二个参数则存储了所有的命令行参数,前面我们已经用 cd命令进入到了ziku文件夹下,接着我们输入了两个参数:
ziku.exe st16x16.txt
则,argc的值是 2,argv[0]是" ziku.exe ",argv[1]是" st16x16.txt "。我没有看到波仔的程序是怎么写的,但可以猜到,给入的第二个参数就是我们用来生成字库用的编码数组。

    回车,然后程序会在ziku文件夹下生成一个[color=#0000 FF ]名称固定为ziku.bin的字库文件,
   
(原文件名:QQ截图未命名5.jpg)
    为了区分,把这个字库文件修改名称为st16x16.bin 。到此,字库已经制作完成,把它放在SD卡或U盘里,供单片机调用就行了。
    上面是生成我想要的取模方式的字库,如果想要别的取模方式的字库,参照上面的方法,在取模软件取模时选择你想要的方式,别的步骤大致相同,就可生成适合你用的字库文件了。
    享受你的成果吧!


整理成的笔记(已打成PDF):
字库制作详细教程ourdev_606856GXKJA1.pdf(文件大小:158K) (原文件名:字库制作详细教程(Release).pdf)

笔记中用到的源材料:
制作字库源材料ourdev_606857JNVKJE.rar(文件大小:56K) (原文件名:制作字库源材料.rar)

下面是一些以前找到的有关国标编码的资料:
GB2312编码规则:
GB2312编码规则ourdev_606867AKNWY5.pdf(文件大小:49K) (原文件名:GB2312编码规则.pdf)
汉字编码表示与显示:
汉字编码表示与显示ourdev_606868FF22L8.pdf(文件大小:73K) (原文件名:汉字编码表示与显示.pdf)
区位码、汉字交换码和汉字机内码的概念和关系:
区位码、汉字交换码和汉字机内码的概念和关系ourdev_606869PPMPQR.pdf(文件大小:54K) (原文件名:区位码、汉字交换码和汉字机内码的概念和关系.pdf)

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2010-12-24 15:20:35 | 显示全部楼层
armok这里排版还真有点费力,弄了好一段时间。

出0入0汤圆

发表于 2010-12-24 16:12:08 | 显示全部楼层
楼主圣诞快乐,学习了.........

出0入9汤圆

发表于 2010-12-24 16:21:27 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-24 16:32:04 | 显示全部楼层
标  记

出50入0汤圆

发表于 2010-12-24 16:34:15 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-24 20:32:12 | 显示全部楼层
支持!!收下!

出0入0汤圆

发表于 2010-12-24 21:31:54 | 显示全部楼层
不错

出0入0汤圆

发表于 2010-12-24 22:52:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-24 23:10:45 | 显示全部楼层
支持一下。

出0入0汤圆

发表于 2010-12-24 23:58:28 | 显示全部楼层
up

出0入0汤圆

发表于 2010-12-25 08:13:30 | 显示全部楼层
科普工作不错,楼主圣诞快乐

出0入0汤圆

发表于 2010-12-25 08:39:09 | 显示全部楼层
学习。。

出0入24汤圆

发表于 2010-12-25 08:56:35 | 显示全部楼层
Mark!
学习!

出0入0汤圆

发表于 2010-12-25 09:42:29 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-25 09:45:19 | 显示全部楼层
很好,我这正好有块无字库的12864

出0入0汤圆

发表于 2010-12-25 11:01:07 | 显示全部楼层
感谢LZ的辛勤劳动

出0入0汤圆

 楼主| 发表于 2010-12-25 12:07:32 | 显示全部楼层
波仔可能没空啊

出0入0汤圆

发表于 2010-12-25 13:19:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-25 13:24:01 | 显示全部楼层
好资料,谢谢分享

出0入0汤圆

发表于 2010-12-25 14:21:24 | 显示全部楼层
圣诞新作力挺楼主辛苦了

出0入0汤圆

发表于 2010-12-25 14:38:47 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-12-25 16:45:05 | 显示全部楼层
正需要,谢谢了

出0入0汤圆

发表于 2010-12-25 16:48:17 | 显示全部楼层
路过,顶一下

出0入0汤圆

 楼主| 发表于 2010-12-25 21:12:36 | 显示全部楼层
回复【20楼】Wangwy
圣诞新作力挺楼主辛苦了
-----------------------------------------------------------------------

呵呵,这是波仔的方法,我只是整理成菜鸟版的方便和我一样的入门者而已。

出0入0汤圆

发表于 2010-12-25 21:59:11 | 显示全部楼层
好,支持一下!

出0入0汤圆

发表于 2010-12-26 10:33:11 | 显示全部楼层
mark!~

出0入0汤圆

发表于 2010-12-29 19:40:53 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-29 19:47:10 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-29 19:51:27 | 显示全部楼层
支持LZ!

出0入0汤圆

发表于 2010-12-29 20:19:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-29 20:29:57 | 显示全部楼层
没有unicode的资料?

出0入0汤圆

发表于 2010-12-29 20:46:44 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-29 20:56:27 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-29 21:49:51 | 显示全部楼层
mark,字库。

出0入0汤圆

发表于 2010-12-29 22:26:53 | 显示全部楼层
谢谢楼主了,要是上次做电赛时候有这个就好了

出0入0汤圆

发表于 2010-12-31 14:07:09 | 显示全部楼层
请问LZ,我按照你的做法,生成了st16x16.txt,但是有下面的错误

(原文件名:11.jpg)
文件夹里正常有这个文件st16x16.txt

(原文件名:22.jpg)

出0入0汤圆

发表于 2010-12-31 14:15:55 | 显示全部楼层
mark

出350入8汤圆

发表于 2010-12-31 14:24:17 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-31 15:31:17 | 显示全部楼层
mark again

出0入0汤圆

发表于 2010-12-31 15:41:55 | 显示全部楼层
mark回复【36楼】kyughanum 初级玩家
-----------------------------------------------------------------------

你文件名输入错误了

出0入0汤圆

发表于 2010-12-31 18:52:31 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-31 20:42:19 | 显示全部楼层
回复【40楼】zsm180
mark回复【36楼】kyughanum 初级玩家
-----------------------------------------------------------------------
你文件名输入错误了
-----------------------------------------------------------------------

仔细看了一下,我上面那里确实是错了!上面那个只是随便截个图,就是那样的错误指示!后面我发现,文件夹中只能有ziku.exe,st16x16.txt这两个文件,才能执行成功

出0入0汤圆

 楼主| 发表于 2011-1-1 23:07:20 | 显示全部楼层
回复【42楼】kyughanum 初级玩家
回复【40楼】zsm180  
mark回复【36楼】kyughanum 初级玩家  
-----------------------------------------------------------------------  
你文件名输入错误了
-----------------------------------------------------------------------
仔细看了一下,我上面那里确实是错了!上面那个只是随便截个图,就是那样的错误指示!后面我发现,文件夹中只能有ziku.exe,st16x16.txt这两个文件,才能执行成功
-----------------------------------------------------------------------

如果就是那样的错误提示,而你保证文件夹内有ziku.exe,st16x16.txt这两个文件的话,那说明你肯定是输入有错,而不关文件夹里是不是只有那两个文件的事哦。呵呵,检查看清就可以了。

出0入0汤圆

 楼主| 发表于 2011-1-1 23:08:03 | 显示全部楼层
不过不管怎么样,生成了想要的字库就好:)

出0入0汤圆

发表于 2011-1-3 13:44:01 | 显示全部楼层
不错

出0入0汤圆

发表于 2011-1-3 17:23:56 | 显示全部楼层
学习了~~

出0入0汤圆

发表于 2011-1-3 21:33:11 | 显示全部楼层
mark
学习学习

出0入0汤圆

发表于 2011-1-3 22:23:17 | 显示全部楼层
标记,有空再试一下!

出0入0汤圆

发表于 2011-1-4 15:39:43 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-4 16:00:29 | 显示全部楼层
感谢了!

出0入0汤圆

发表于 2011-1-4 19:33:54 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-17 17:19:56 | 显示全部楼层
太谢谢楼主这份资料咯~~

出0入0汤圆

发表于 2011-3-3 15:33:44 | 显示全部楼层
好了,谢谢楼主分享。

出0入0汤圆

发表于 2011-3-3 15:43:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-3 16:00:57 | 显示全部楼层
高通出了个字库芯片,有渠道的说说用这个芯片是否划算。

出0入0汤圆

发表于 2011-3-3 16:46:07 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-3 17:21:06 | 显示全部楼层
支持啊

出0入0汤圆

发表于 2011-3-3 20:06:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-3 20:41:55 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-20 14:27:42 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-21 09:59:17 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-21 10:59:56 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-28 15:00:32 | 显示全部楼层
Mark!

出350入8汤圆

发表于 2011-3-28 15:12:55 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-28 15:23:13 | 显示全部楼层
学习

出0入0汤圆

发表于 2011-3-28 15:33:23 | 显示全部楼层
学习了

出0入0汤圆

发表于 2011-3-28 16:11:17 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-28 17:51:42 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-28 19:39:42 | 显示全部楼层
不错,学习一下·

出0入0汤圆

发表于 2011-3-28 19:54:36 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-28 20:11:12 | 显示全部楼层
收下,以后用得着!

出0入0汤圆

发表于 2011-4-8 16:19:04 | 显示全部楼层
不知道生成的字库文件如何使用,请楼主给点建议,谢谢!

出0入0汤圆

发表于 2011-5-28 14:58:02 | 显示全部楼层
太感谢啦!!
一直在寻找!!

出0入0汤圆

发表于 2011-5-28 16:06:42 | 显示全部楼层
收藏啦~

出0入0汤圆

发表于 2011-5-28 23:04:08 | 显示全部楼层
一般习惯直接使用完整字库,或者顶多删除后面空白区域
写程序方便

出0入0汤圆

发表于 2011-5-28 23:16:14 | 显示全部楼层
good

出0入0汤圆

发表于 2011-5-29 00:04:44 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-11 21:07:57 | 显示全部楼层
强势!正想弄此,看看,借鉴一下,非常感谢!

出0入0汤圆

发表于 2011-8-11 21:12:53 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-23 11:59:21 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-8-23 14:42:51 | 显示全部楼层
制作字库全过程.. ..

出0入0汤圆

发表于 2011-8-23 17:08:42 | 显示全部楼层
字库 mark

出0入0汤圆

发表于 2011-8-23 17:35:01 | 显示全部楼层
果断马瑞卡!

出0入0汤圆

发表于 2011-8-23 18:14:32 | 显示全部楼层
辛苦

出0入0汤圆

发表于 2011-8-24 10:21:29 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-24 10:36:13 | 显示全部楼层
不错,顶!

出0入0汤圆

发表于 2011-8-24 10:51:14 | 显示全部楼层
谢谢了啊

出0入0汤圆

发表于 2011-8-24 11:20:12 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-8-24 11:36:45 | 显示全部楼层
cool  mark

出0入0汤圆

发表于 2011-8-24 12:30:26 | 显示全部楼层
mark and thanks

出0入0汤圆

发表于 2011-8-24 23:21:36 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-25 11:55:30 | 显示全部楼层
楼主辛苦了,谢谢分享!

出0入0汤圆

发表于 2011-8-25 13:20:41 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-25 13:39:55 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-25 16:07:13 | 显示全部楼层
mark and thanks!

出0入0汤圆

发表于 2011-8-25 17:37:15 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-25 18:59:10 | 显示全部楼层
打个记号,以后需要时好找
谢谢!

出0入0汤圆

发表于 2011-9-2 09:11:49 | 显示全部楼层
正在学这个,楼主辛苦了

出0入0汤圆

发表于 2011-9-2 16:35:49 | 显示全部楼层
不错,mark~~~~
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-3 09:17

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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