用于嵌入式系统的点阵字库生成(for C51)

一 编码标准

      GBK全称《汉字内码扩展规范》,GB即"国标",K是"扩展"的汉语拼音第一个字母。GBK向下与GB2312编码兼容,向上支持ISO 10646.1国际标准。
      ISO 10646是国际标准化组织ISO公布的一个编码标准,简称UCS,与Unicode住址的Unicode编码完全兼容。GB13000.1等同于ISO 10646.1。
 

二 码位分配及顺序

      GBK采用双字节表示,总体编码范围为0x8140-0xFEFE,首字节在81-FE之间,尾字节在40-FE之间,剔除xx7F一条线。总计23940个码位,共收入21886个汉字和图形符号,其中汉字(包括部首和构件)21003个,图形符号883个。全部编码分为三大部分:
      1  汉字区,包括:
          a. GB2312汉字区。即GBK/2:B0A1-F7FE.收录GB 2312汉字6763个,按原顺序排列。
          b. GB13000.1扩充汉字区。包括:
              (1) GBK/3:8140-A0FE。收录GB 13000.1中的CJK汉字6080个。
              (2) GBK/4:AA40-FEA0。收录CJK汉字和增补汉字8160个。CJK汉字在前,按UCS代码大小排列;增补的汉字(包括部首和构件)在后,按《康熙字典》的页码/字位排列。
      2  图形符号区。包括:
          a. GB2312非汉字符号区。即GBK/1:A1A1-A9FE。其中除GB2312的符号外,还有10个小写罗马数字和GB 12345 增补的符号。计符号717个。
          b. GB 13000.1扩充非汉字区。即GB/5:A840-A9A0。BIG-5非汉字符号、结构符和“〇”排列在此区。计符号166个。
      3  用户自定义区(使用者加字区):分为(1)(2)(3)三个小区。
          (1)  AAA1-AFFE,码位564个。
          (2)  F8A1-FEFE,码位658个。
          (3)  A140-A7A0 ,码位672个。
          第(3) 区尽管对用户开放,但限制使用,因为不排除未来在此区域增补新字符的可能性。
 

三 提取字库图片

      使用工具“字模提取V2.2”。1) 新建16*16的图像,并将参数设置为纵向取模;2) 将要提取的字模用CTRL+V粘贴进入文字输入区中;3) 点“C51格式”按钮生成图片数据。

四  字库数据生成

     将用“字模提取V2.2”提取到的点阵数组,按顺序写入到BIN文件中,就是可使用的字库文件了。
      1) 工具FontToBin(C51)中实现了将点阵数据按要求写入到BIN数据中.
     2) 程序显示字符的时候,只要找到Bin文件所在位置,根据GBK码值,算出在BIN中的偏移,显示16*16的图片即可。例如 0XB0A1段的汉字,地址计算如下: 
        adder = (xs_ma/256 - 0XB0) * (0XFF - 0XA1) + (xs_ma%256 - 0XA1);/*xs_ma为GBK码值*/
        adder = ADDER_GBK_B0A1_F7FE + adder * 32;                       /*ADDER_GBK_B0A1_F7FE为B0A1段字库在BIN中的偏移*/
      

五  相关工具 

      相关工具下载http://download.csdn.net/detail/qqbitqqbit/5130563
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
v1.11 (08/14/2012) 1. 增加注册年限选择。 v1.10 (06/26/2012) 1. 精简字库检索表。 2. 增加 GBK 字库输出。 3. 增加一种点阵数据存储格(只存有效像素数据--not fixed, 不支持MBCS编码格的中日韩), 对泰文,缅甸文等特殊语种显示非常便捷。 v1.09 (06/15/2012) 1. 增加输出 C 语言(数组) 字体格。 V1.08 (05/17/2012) 1. 增加了两个版本(免费和试用版) 免费版 只对 16点阵有效。 试用版 对所有点阵有效,但是会缺部分字符。 2. 增加热键功能。 3. 修改了多国语言生成.h文件时,start 与 end 不匹配的bug。 4. 完善文档《GuiTool 使用说明》, 增加更多图解说明。 文档下载地址: http://ishare.iask.sina.com.cn/f/24472766.html v1.07 (05/02/2012) 1. 修改注册方(改为文件)。 2. 增加bdf格编码过滤功能,主要是为了支持 MTK 手机点阵字库。 3. 增加xp控件属性。 4. 增加扫描模图解。 5. 修改了 bdf 2 bin 的一个bug。(选择输出位图时,会输出n个位图文件) 6. 修改了 BDF 文件中当字符显示宽度为0,存位图(所有字符存一张图片)失败的错误。 v1.06 (04/10/2012) 1. 增加系统字体支持,操作更简便,快捷。 枚举所有已安装系统字体,直接选择即可。 v1.05 (03/24/2012) Fontmaker(点阵字库) 1. 修正了字符对齐问题。 2. 增加了单个字符或多个字符输出成位图文件设定。 3. 完善了阿拉伯文字库(unicode 字库有效)。 4. 增加自定义字符功能(unicode 字库有效)。 Multi-language(多国语言) 1. 增加输出编码格 (mbcs, utf16-lb, utf8)设置 2. 增加数组格输出。 Image Manager(图像管理) 1. 该页为新增功能,支持图片图像的数据转换。主要应用在做产品logo图片方面。 V1.04 (07/16/2011) 1. 增加了一个字符串mbcs2unicode(内码转统一码)的功能。 (支持转:U16-LE, U16-BE, UTF8) V1.03 (07/05/2011) 1. 修改了 Example 中点阵字库解析源码,更加便于移植。(基本做到只需修改font_file.c 即可) 2. 修改了内码(MBCS)字库点阵信息读取的一个错误。 3. 增加了多语言支持(简中,英文),还有待完善。。。 V1.02 (07/01/2011) 1. FontMaker V2.03 a. 增加字符宽高比调节(HorR & VerR) b. 增加对*.ttc 字库的支持。 c. 增加bdf(*.bdf)文件格转Simple Unicode编码格的bin文件。 V1.01 (06/29/2011) 1. FontMaker V2.02 a. 增加了 Simple Unicode功能。(适合小字库) b. 增加了 “扫描方向及反显”设置。 2. Multi-Language V1.01 a. 修改了除 office 2000 外,其它不能支持的问题。 V1.00: (2007-2011) 1. 继承 FontMaker V2.01 的所有功能。 2. 增加了一个 Multi-Languge V1.00 的打包转换功能。 FontMaker 基本功能: 1.支持所有 windows 字符集:CP932(日文Shift-JIS)CP936(简体中文GBK)CP949(韩文)CP950(繁体中文 Big5),CP874(泰文),CP1250(中欧)CP1251(西里尔文),CP1252(西欧--"拉丁文I"),CP1253(希腊文), CP1254(土耳其文),CP1255(希伯来文),CP1256(阿拉伯文),CP1257(波罗的海文),CP1258(越南) 2.支持非等宽字库。 3.支持BIN,TXT,BMP,BDF 文件输出。 4.支持unicode字库输出,即可以做到在一个窗口中同时显示多国语言(文字) 5.支持单个字符编辑,预览(所见即所得)。 6.支持字库文件和输出路径记忆功能. 7. 支持从bdf格转换自定义字库(bin文件)格
v1.06 (20120410) FontMaker(点阵字库) 1. 增加系统字体支持,操作更简单,快捷。 v1.05 (20120324) FontMaker(点阵字库) 1. 修正了字符对齐问题。 2. 增加了单个字符或多个字符输出成位图文件设定。 3. 完善了阿拉伯文字库(unicode 字库有效)。 4. 增加自定义字符功能(unicode 字库有效)。 Multi-language(多国语言) 1. 增加输出编码格 (mbcs, utf16-lb, utf8)设置 2. 增加数组格输出。 Image Manager(图像管理) 1. 该页为新增功能,支持图片图像的数据转换。主要应用在做产品logo图片方面。 V1.04 (20110716) 1. 增加了一个字符串mbcs2unicode(内码转统一码)的功能。 (支持转:U16-LE, U16-BE, UTF8) V1.03 (20110705) 1. 修改了 Example 中点阵字库解析源码,更加便于移植。(基本做到只需修改font_file.c 即可) 2. 修改了内码(MBCS)字库点阵信息读取的一个错误。 3. 增加了多语言支持(简中,英文),还有待完善。。。 V1.02 (20110701) 1. FontMaker V2.03 a. 增加字符宽高比调节(HorR & VerR) b. 增加对*.ttc 字库的支持。 c. 增加bdf(*.bdf)文件格转Simple Unicode编码格的bin文件。 V1.01 (20110629) 1. FontMaker V2.02 a. 增加了 Simple Unicode功能。(适合小字库) b. 增加了 “扫描方向及反显”设置。 2. Multi-Language V1.01 a. 修改了除 office 2000 外,其它不能支持的问题。 V1.00: (20110627) 1. 继承 FontMaker V2.01 的所有功能。 2. 增加了一个 Multi-Languge V1.00 的打包转换功能。 FontMaker 基本功能: 1.支持所有 windows 字符集:CP932(日文Shift-JIS)CP936(简体中文GBK)CP949(韩文)CP950(繁体中文 Big5),CP874(泰文),CP1250(中欧)CP1251(西里尔文),CP1252(西欧--"拉丁文I"),CP1253(希腊文), CP1254(土耳其文),CP1255(希伯来文),CP1256(阿拉伯文),CP1257(波罗的海文),CP1258(越南) 2.支持非等宽字库。 3.支持BIN,TXT,BMP,BDF 文件输出。 4.支持unicode字库输出,即可以做到在一个窗口中同时显示多国语言(文字) 5.支持单个字符编辑,预览(所见即所得)。 6.支持字库文件和输出路径记忆功能 7. 支持从bdf格转换自定义字库(bin文件)格

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值