前言由于工作的需要,参考了好多资料整理出来一份计算机汉字处理报告,不敢独享,希 望与大家共享。
Ziggler 现代计算机技术虽然先进, 但大多数人只知录入 GB-2313 字符集内的 6763 个简体汉字, 对包含 21003 个简繁体汉字的 GBK 字符集的文字录入、字体 显示就已不甚了解(市面上 绝大多数所谓的繁体字体,其实采用的是 GB2313 字符集简体字的编码,用字体显示为繁体 字,而不是直接用 GBK 字符集中繁体字 的编码,错误百出) 。
而汉字总数至少有近 10 万 个,目前计算机能处理的,也有 70244 个,已非一般人所能知能用了。
由于汉字总数非常庞大。
汉字总共有多少字?到目前为止, 恐怕没人能够答得上来精确 的数字。
据估计,汉字数量达到 11 万左右。
这里所说的七万多汉字, 是指 UNICODE 超大字集全部七万多中日韩汉字。
(注: Unicode 是指用两个字节表示每个字符的字符编码方案。
) 那一般计算机能够显示多少个汉字呢?比如大陆这边普遍安装简体 Windows 系统,而 简体 windows 以宋体为系统字型,宋体支持 GBK 编码,所以能显示 20902 个汉字。
要显示 71564 个汉字, 可以采取多种方案, 如: 宋体-方正超大字符集+新细明体 EXTB、 宋体-方正超大字符集+中易宋体 EXTB、宋体 GB18030+新细明体 ExtB、宋体 18030+宋体 ExtB 等等。
中文字符集、编码字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。
字符 集是多个字符的集合,字符集 种类较多,每个字符集包含的字符个数不同。
计算机要准确的处理各种字符集文字, 需要进行字符编码, 以便计算机能够识别和存储 各种文字。
中文文字数目大, 而且还分为简体中文和繁体中文两种不同书写规则的文字, 而计算机 最初是按英语单字节字符设计的, 因此, 对中文字符进行编码, 是中文信息交流的技术基础。
以下是常见的一些字符集介绍,部分字符集中包括编码介绍。
GB2312 字符集1.名称的由来 GB2312 又称为 GB2312-80 字符集,全称为《信息交换用汉字编码字符集·基本集》 ,由原中 国国家标准总局发布,1981 年 5 月 1 日实施。
2.特点 GB2312 是中国国家标准的简体中文字符集。
它所收录的汉字已经覆盖 99.75%的使用频率,基本满足了汉字的计算机处理需要。
在中国大陆和新加坡获广泛使用。
3.包含内容 GB2312 收录简化汉字及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语 拼音符号、 汉语注音字母, 共 7445 个图形字符。
其中包括 6763 个汉字, 其中一级汉字 3755 个,二级汉字 3008 个;包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔 字母在内的 682 个全角字符。
4.技术特征 (1)分区表示: GB2312 中对所收汉字进行了“分区”处理,每区含有 94 个汉字/符号。
这种表示方式也称 为区位码。
各区包含的字符如下:01-09 区为特殊符号;16-55 区为一级汉字,按拼音排序;56-87 区 为 二级汉字,按部首/笔画排序;10-15 区及 88-94 区则未有编码。
(2)双字节表示 两个字节中前面的字节为第一字节,后面的字节为第二字节。
习惯上称第一字节为“高 字节” ,而称第二字节为“低字节” 。
“高位字节”使用了 0xA1-0xF7(把 01-87 区的区号加 上 0xA0), “低位字节”使用了 0xA1-0xFE(把 01-94 加上 0xA0)。
5.编码举例 以 GB2312 字符集的第一个汉字 “啊” 字为例, 它的区号 16, 位号 01, 则区位码是 1601, 在大多数计算机程序中,高字节和低字节分别加 0xA0 得到程序的汉字处理编码 0xB0A1。
计 算公式是:0xB0=0xA0+16, 0xA1=0xA0+1。
BIG5 字符集1.名称的由来 又称大五码或五大码,1984 年由台湾财团法人信息工业策进会和五间软件公司宏碁 (Acer)、神通 (MiTAC)、佳佳、零壹 (Zero One)、大众 (FIC)创立,故称大五码。
Big5 码的产生,是因为当时台湾不同厂商各自推出不同的编码,如倚天码、IBM PS55、 王安码等,彼此不能兼容;另一方面,台湾政府当时尚未推出官方的汉字编码,而中国大陆 的 GB2312 编码亦未有收录繁体中文字。
2.特点 Big5 字符集共收录 13,053 个中文字,该字符集在中国台湾使用。
耐人寻味的是该字符 集重复地收录了两个相同的字: “兀”(0xA461 及 0xC94A)、 “嗀”(0xDCD1 及 0xDDFC)。
3.字符编码方法 Big5 码使用了双字节储存方法,以两个字节来编码一个字。
第一个字节称为“高位字 节” ,第二个字节称为“低位字节” 。
高位字节的编码范围 0xA1-0xF9,低位字节的编码范围 0x40-0x7E 及 0xA1-0xFE。
各编码范围对应的字符类型如下:0xA140-0xA3BF 为标点符号、希腊字母及特殊符号, 另 外 于 0xA259-0xA261 , 存 放 了 双 音 节 度 量 衡 单 位 用 字 : 兙 兛 兞 兝 兡 兣 嗧 瓩 糎 ; 0xA440-0xC67E 为常用汉字,先按笔划再按部首排序;0xC940-0xF9D5 为次常用汉字,亦是 先按笔划再按部首排序。
4.Big5 的局限性 尽管 Big5 码内包含一万多个字符,但是没有考虑社会上流通的人名、地名用字、方言 用字、化学及生物科等用字,没有包含日文平假名及片假名字母。
例如台湾视“着”为“著”的异体字,故没有收录“着”字。
康熙字典中的一些部首用 字(如“亠” 、 “疒” 、 “辵” 、 “癶”等)、常见的人名用字(如“堃” 、 “煊” 、 “栢” 、 “喆”等) 也 没有收录到 Big5 之中。
GBK 字符集又称大字符集(GB=GuóBiāo 国标,K=扩展),包含以上两种字符集汉字,收入 21003 个 汉字,882 个符号,共计 21885 个字符,包括了中日韩(CJK)统一汉字 20902 个、扩展 A 集 (CJK Ext-A) 中的汉字 52 个。
Windows 95\98 简体中文 版就带有这个 GBK.txt 文件。
宋体、 隶书、 黑体、 幼圆、 华文中宋、 华文细黑、 华文楷体、 标楷体(DFKai-SB)、 Arial Unicode MS、 MingLiU、PMingLiU 等字体支持显示这个字符集。
微软拼音输入法 2003、全拼、紫光拼音 等输入法,能够 录入如镕镕炁夬喆嚞姤赟赟䶮龑昳堃慜靕臹等 GBK 简繁体汉字。
GB18030 字符集1.名称的由来 GB 18030 的全称是 GB18030-2000《信息交换用汉字编码字符集基本集的扩充》 ,是我国 政府于 2000 年 3 月 17 日发布的新的汉字编码国家标准,2001 年 8 月 31 日后在中国市场上 发布的软件必须符合本标准2.特点 GB 18030 字符集标准的出台经过广泛参与和论证,来自国内外知名信息技术行业的公 司,信息产业部和原国家质量技术监督局联合实施。
GB 18030 字符集标准解决汉字、日文假名、朝鲜语和中国少数民族文字组成的大字符 集计算机编码问题。
该标准的字符总编码空间超过 150 万个编码位,收录了 27484 个汉字, 覆盖中文、日文、朝鲜语和中国少数民族文字。
满足中国大陆、香港、台湾、日本和韩国等 东亚地区信息交换多文种、大字量、多用途、统一编码格式的要求。
并且与 Unicode 3.0 版本兼容,填补 Unicode 扩展字符字汇“统一汉字扩展 A”的内容。
并且与以前的国家字符 编码标准(GB2312,GB13000.1)兼容。
3.编码方法 GB 18030 标准采用单字节、双字节和四字节三种方式对字符编码。
单字节部分使用 0 ×00 至 0×7F 码(对应于 ASCII 码的相应码)。
双字节部分,首字节码从 0×81 至 0×FE,尾 字节码位分别是 0×40 至 0×7E 和 0×80 至 0×FE。
四字节部分采用 GB/T 11383 未采用的 0 ×30 到 0×39 作为对双字节编码扩充的后缀, 这样扩充的四字节编码, 其范围为 0×81308130 到 0×FE39FE39。
其中第一、三个字节编码码位均为 0×81 至 0×FE,第二、四个字节编码 码位均为 0×30 至 0×39。
4.包含的内容 双字节部分收录内容主要包括 GB13000.1 全部 CJK 汉字 20902 个、 有关标点符号、 表意 文字描述符 13 个、增补的汉字和部首/构件 80 个、双字节编码的欧元符号等。
四字节 部分收录了上述双字节字符之外的,包括 CJK 统一汉字扩充 A 在内的 GB 13000.1 中的全部 字符。
方正超大字符集包含 GB18030 字符集、CJK Ext-B 中的 36862 个汉字,共计 64395 个汉字。
宋体-方正 超大字符集支持这个 字符集的显示。
Microsoft Office XP 或 2003 就自带有这个字体。
若要 单独安装字体,选择:自定义安装→选择应用程序的高级自定义 →Microsoft Office→Office 共享功能→中文字体→中文超大字符集字体,点左键选择“从本机运行全部程序”,其馀内容 用左键点击选择 不安装。
Unicode 字符集1.名称的由来 Unicode 字符集编码是 Universal Multiple-Octet Coded Character Set 通用多八位编码字符集的简称,是由一个名为 Unicode 学术学会(Unicode Consortium)的机构制订的 字符编码系统, 支持现今世界各种不同语言的书面文本的交换、 处理及显示。
该编码于 1990 年开始研发,1994 年正式公布,最新版本是 2005 年 3 月 31 日的 Unicode 4.1.0。
2.特征 Unicode 是一种在计算机上使用的字符编码。
它为每种语言中的每个字符设定了统一并 且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
3.编码方法 Unicode 标准始终使用十六进制数字,而且在书写时在前面加上前缀“U+” ,例如字母 “A”的编码为 004116 和字符“?”的编码为 20AC16。