微软交流社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 106|回复: 0

仿宋GB2312和仿宋之争

[复制链接]

1

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2022-9-22 12:03:44 | 显示全部楼层 |阅读模式
笔者工作中多次遇到专家提出“仿宋字体”不符合国标要求的这个问题,言下之意只有后面带GB2312的才是符合国标,本着求真务实的精神,笔者对这个问题的相关领域进行了资料搜集,分析,下面直接说结论:
第一,仿宋_GB2312、仿宋(win系统自带,使用GB18030)、方正仿宋_GBK、华文仿宋字库等都是符合国标的字体,仿宋_GB2312是字库名称,而非字体名称,GB2312也并非标准所指的唯一“国标”,GB18030和GBK均完全向下兼容GB2312;
第二,仿宋_GB2312和仿宋分别由长城电脑和中易中标公司设计的,前者汉字字量较少,不满足《通用规范汉字表(2013版)》的字量要求,且长城公司已不再进行字体开发,缺少的字体后续已经无法更新;后者汉字库数量较多,并且随着技术和年代的进步还在不断补充;
第三,仿宋_GB2312是Windows XP的自带字体,操作系统升级后很多单位还要求延续之前的字体要求,继续使用仿宋_GB2312,这实际上是一种习惯惯性,不应认为是一种强制要求,且因为字库的字量不足,文档传输的兼容性差,笔者建议全面弃用,改用系统自带的“仿宋”字库(使用GB18030)
一、职业卫生现状评价的字体是怎么规定的?
根据《用人单位职业病危害现状评价技术导则》(WS/T751-2015)的标准要求,正文要求“字体为国标仿宋体”,这里的国标是否就是GB2312?
这里涉及两个问题:GB2312是什么标准;如果GB2312不对,那么应该执行哪个国标?
二、仿宋的“国标”指什么?
首先我们要了解什么是GB2312:
Gb2312-1980是字符集的国家基础标准,迄今已经42年了
随着简体中文的数字化,自1980年代以来通常使用中华人民共和国国家标准总局公布的GB 2312,以及其后继的GBK和GB18030中文编码三种范围的中文编码
GBK编码是一种过渡过程中的承上启下的产物,GBK编码,是在GB2312-1980标准基础上的内码扩展规范,使用了双字节编码方案,共收录了21003个汉字,完全兼容GB2312-1980标准,GBK编码方案于1995年10月制定完成,从win95开始的操作系统均已兼容这一标准
GB 18030,全称《信息技术 中文编码字符集》,是中华人民共和国国家标准所规定的变长多字节字符集。其对GB 2312-1980完全向后兼容。(兼容关系见下图)


这里开始就出现了分歧,那么什么是字体,什么又是字库呢?
字体包括宋体、楷体、黑体、仿宋、小标宋、行书、隶书、草书等等,成百上千种。
那什么是字库呢?
实际上,在计算机中显示的每个字都是一份有版权的“作品”,仿宋_GB2312、方正仿宋简体、方正仿宋_GBK等都是字库名称,而不是字体名称,它们的字体名称都是仿宋体。


Windows系统预装的仿宋也是一款字库,只不过与字体重名罢了
综上所述,正式上市出版的字库均符合国标要求,而且由于GB18030和GBK优秀的向下兼容能力,完全可以说使用GBK或GB18030的字库肯定是同时符合GB2312国标的,如windows内置的中易仿宋字体,在最开始其实就是从GB2312开始开发的(见下图中易公司1995年说明),只不过后续不断升级支持更多的字符,直到现在大家看到的windows系统自带的仿宋(GB18030编码)字库


常见的仿宋字体举例及国标使用情况如下图:


所以,无论使用仿宋_GB2312、仿宋、华文仿宋、方正仿宋_GBK、仿宋等字库,均为符合要求的选择
当然,具体的字体选择各个公司还是有自主性的,只要在公司程序文件等制度内做了更具体的规定,比如公司报告必须使用“仿宋_GB2312”进行出版,当然也是可以的,不过笔者并不推荐这样做,具体理由还请继续往下看。
三、仿宋_GB2312的局限
1、字库本身的局限
字符编码标准人为规定了字符在计算机中的编码,一个编码(计算机能够识别的一串数字)只对应某一个特定的字符,解决了包括汉字在内的字符在计算机中显示、存储、传输、交流的问题。国际上有统一的标准,但历史上各个语言都制定了自己的标准。历史上,国内重要的汉字字符编码
我们常用的标准有GB2312(原始字符集)、GBK(国标扩展)、GB18030(现行字符集),这些国标都是向下兼容的,只是依次扩展了字符数。对字库设计公司来说,要按照国家标准将包括汉字在内的字符与编码一一对应起来;对普通用户来说,有意义的是标准中规定了多少字符、有多少个汉字。
重点来了:
GB2312-1980仅收录6763个常用汉字;
GBK(1995)进行了加编,共收录21003个汉字;
GB18030现行有效为2005版,共收录汉字70244个
而该标准还在持续更新中,如GB18030-2022已经发布,共收录汉字 87887个
大家可能会说,那么多少个字才算可以正常完整使用呢,因为GB18030中有非常多的极其生僻的汉字,日常几乎使用不到。
答案很简单:
在2013年6月5日,经国务院同意,教育部、国家语言文字工作委员会组织制定的《通用规范汉字表》公布,该表是《中华人民共和国国家通用语言文字法》的配套规范,是现代记录汉语的通用规范字集,体现着现代通用汉字在字量、字级和字形等方面的规范。《通用规范汉字表》公布后,社会一般应用领域的汉字使用以《通用规范汉字表》为准,原有相关字表停止使用。该表共收录汉字8105个。
从《中华人民共和国国家通用语言文字法》、《通用规范汉字表》等可知,现代通用汉字的字量已经比1980年的要求大大增加,GB2312的字量已无法满足现行《通用规范汉字表》的覆盖范围,在遇到一些姓名、学术用词等生僻字时,已无法做到全覆盖,这也是出现仿宋GB2312字在显示、打印等过程中经常出现“爆字”(即出现字库内缺字,使用宋体替代)问题的根源
2、使用过程的局限
在过去的XP系统中,没有现在的GB18030仿宋,只有仿宋_GB2312。但是到了微软的Win7或以上系统,却只有现在的仿宋,没有了仿宋_GB2312。
于是就发生了以下的情况:在GB2312字库下制作的内容在Win7系统中打开,全部转换成系统默认的字体;而用GB18030字库下制作的内容在GB2312的系统中打开,全部转换成系统默认的字体,导致文档不符合格式制作规定。于是就出现了双方的扯皮:
“你的没有用国标仿宋字体!”
“你才是没有使用最新的国标仿宋字体!”
你说谁有理?这种情况本是可以避免的!
四、笔者建议选择哪一款字库?
第一种情况,如上文所说,如果公司的程序文件明确了字体和字库,那就按照规定使用相应的字库即可。
第二种情况,如果没有明确规定哪款字库或者如WS/T751所说的“仿宋国标”字体,首先要满足全文的一致性、美观性和实用性三个方面,其次还要考虑字体预装的稳定性和兼容性,因此笔者的建议是:
放过字量少的可怜的仿宋GB2312吧,这个已经被抛弃,不再更新的产物已经无法满足现有字量的要求!
是时候让位给GB18030编码的“仿宋”了!
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|微软交流社区

GMT+8, 2025-3-13 15:40 , Processed in 0.088927 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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