很多朋友对于gbk字库和GBK大字库不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
如何生成GBK字库
在不同的应用场景中,我们需要选择不同的字库文件。例如,为了节省空间,同时支持基本的中文显示,可以选择GB2312字库;若需要一个更为全面的中文库,如KTV中使用,可以考虑GBK字库。GuiTool默认支持GB2312,但要生成GBK字库,需遵循以下步骤。
Step1:设置所需参数。Step2:选择编码、字体大小、字符集和输出格式,生成字库即可。生成后的字库文件格式为*.bin,文件头包含16字节,点阵数据则为等宽等高。数据检索方式如下:
long GetIndexWithGBK(UINT code){ long lIdx=-1; BYTE R=(code>> 8)& 0xFF;//区码 BYTE C= code& 0xFF;//位码 if(R>= 0x81&& R<= 0xFE){ if(C>= 0x40&& C<= 0xFE)// 0x40~ 0x7E& 0x80~0xFE{ lIdx=(R-0x81)*190+(C-0x40);//190=(0x7E-0x40+1)+(0xFE-0x80+1); if(C== 0x80) lIdx-= 1;// move 0x7F}}
int h= font_height;// font_height在文件头中有这个参数,具体见Guitool的帮助文档。
int w= font_height;//因为等宽等高
int size_per_line=(w+ 7)/ 8;//size_per_line即存放一行(列)像素所需字节数。
int size_per_char= h* size_per_line;//size_per_char即存放一个字符点阵像素所占字节数。
long idx= GetIndexWithGBK(code);
if(idx!=-1){
font_data_addr= 16+ idx* size_per_char;//font_data_addr即编码为code的点阵数据起始地址。
// fseek(。。。。)
// fread(。。。。)
}
通过上述步骤,可以生成所需GBK字库。生成的字库文件格式为*.bin,文件头包含16字节,点阵数据则为等宽等高。数据检索方式如上所示,可根据需要进行调整,以适应不同的应用场景。
生成后的字库文件格式为*.bin,文件头包含16字节,点阵数据则为等宽等高。数据检索方式如上所示,可根据需要进行调整,以适应不同的应用场景。
输入法gb与gbk什么区别
1、全称不一样。
GB字体全称GB2312或GB2312-80,是一个简体中文字符集的中国国家标准,全称为《信息交换用汉字编码字符集--基本集》,由中国国家标准总局发布,1981年5月1日实施。
GBK全名为汉字内码扩展规范,英文名Chinese Internal Code Specification。K即是“扩展”所对应的汉语拼音(KuoZhan)中“扩”字的声母。
2、收录的汉字规模不同。
GB2312标准共收录6763个汉字, GB2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号。这种表示方式也称为区位码。
GBK汉字国标扩展码,基本上采用了原来GB2312-80所有的汉字及码位,并涵盖了原Uniwxxxcode-style中所有的汉字20902,总共收录了883个符号, 21003个汉字及提供了1894个造字码位。
3、可输出格式不同。
GB可以输出简体中文,GBK则可以输出简/繁体中文。如部分于GB2312-80推出后才简化的汉字(如“啰”),部分人名用字(如中国前总理朱镕基的“镕”字),台湾及香港使用的繁体字,日语及朝鲜语汉字等,GB字库并未有收录在内,而拓展后的GBK字库则可以输出。
GBK字库的基本含义
GBK向下与 GB 2312编码兼容,向上支持 ISO 10646.1国际标准,是前者向后者过渡过程中的一个承上启下的产物。ISO 10646是国际标准化组织 ISO公布的一个编码标准,即 Universal Multilpe-Octet Coded Character Set(简称UCS),大陆译为《通用多八位编码字符集》,台湾译为《广用多八位元编码字元集》,它与 Unicode组织的 Unicode编码完全兼容。ISO 10646.1是该标准的第一部分《体系结构与基本多文种平面》。我国 1993年以 GB 13000.1国家标准的形式予以认可(即 GB 13000.1等同于 ISO 10646.1)。
GBK编码,是在GB2312-80标准基础上的内码扩展规范,使用了双字节编码方案,其编码范围从8140至FEFE(剔除xx7F),共23940个码位,共收录了21003个汉字,完全兼容GB2312-80标准,支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字,并包含了BIG5编码中的所有汉字。GBK编码方案于1995年10月制定, 1995年12月正式发布,目前中文版的WIN95、WIN98、WINDOWS NT以及WINDOWS 2000、WINDOWS XP、WIN 7等都支持GBK编码方案。
GBK字库实践应用
随着GBK字库的广泛应用,中国新华通讯社从2000年1月1日起,所有新闻稿件采用GBK编码发送,以适应新的信息传播需求。同年4月1日,中国银行业引入“储蓄实名制”,这一改革进一步推动了GBK字库在金融领域的应用。在数字化时代,出版物转向网络化,新闻发布和网络出版成为主流,对汉字处理提出了更高的要求。GBK字库因其对人名和地名等特殊字符的支持,成为了应对这一挑战的优选方案。
作为市场领导者,北大方正充分准备了GBK字库服务,其出版系统如方正书版9.0、方正飞腾1.0及世纪RIP 1.0版本起就全面支持这种字库,显著减少了用户在转换过程中的字符补全工作。使用GBK字库的操作变得极为简便,无论是排版软件,如Windows上的MS Office、PageMaker,还是金山WPS,都已普遍兼容。而且,方正还特别制作了GBK内码字典,用户可以通过查字典的方式快速找到汉字的GBK编码进行录入,极大地提高了工作效率。
扩展资料
GBK是汉字编码标准之一,全称《汉字内码扩展规范》(GBK即“国标”、“扩展”汉语拼音的第一个字母,英文名称:Chinese Internal Code Specification),中华人民共和国全国信息技术标准化技术委员会1995年12月1日制订,国家技术监督局标准化司、电子工业部科技与质量监督司1995年12月15日联合以技监标函1995 229号文件的形式,将它确定为技术规范指导性文件。这一版的GBK规范为1.0版。