zoukankan      html  css  js  c++  java
  • 说说 Windows 中的中文字体 四

    上一篇说了 Silverlight 中的中文字体,现在来说说 Windows 中的中文字体。

     

    在默认情况下,也就是未自行安装新字体或者 Office 等文字处理软件的情况下,Windows 默认提供下列字体:

    Windows 95/98/98SE 宋体、黑体、楷体_GB2312、仿宋_GB2312
    Windows XP/2000/2003/ME/NT 宋体/新宋体、黑体、楷体_GB2312、仿宋_GB2312 (Windows XP SP3 宋体-PUA)
    Windows Vista/7/2008 宋体/新宋体、黑体、楷体、仿宋、微软雅黑、SimSun-ExtB

     

    那么每种字体能显示那些汉字呢?

    Vista 之前的 Windows 中宋体/新宋体、黑体支持 GBK 1.0 字符集,
    楷体_GB2312、仿宋_GB2312 支持 GB2312-80 字符集。
    (注:Windows 3.X 只能支持 GB2312-80 字符集)

     

    Vista 及之后的 Windows 中宋体/新宋体、黑体、楷体、仿宋、微软雅黑支持 GB18030-2000 字符集,
    SimSun-ExtB 只支持 GB18030-2005 字符集扩展 B 部分。

     

    下面对字符集进行简单的介绍:
    GB2312-80 < GBK 1.0 < GB18030-2000 < GB18030-2005
    GB2312-80 中的字符数量最少,GB18030-2005 字符数量最多。

    GB2312-80 是最早的版本,字符数比较少;
    GBK 1.0 中的汉字大致与 Unicode 1.1 中的汉字数量相同;
    GB18030-2000 中的汉字大致与 Unicode 3.0 中的汉字数量相同,主要增加了扩展 A 部分;
    GB18030-2005 中的汉字大致与 Unicode 4.1 中的汉字数量相同,主要增加了扩展 B 部分;
    由于 Unicode 5.2 的发布,估计 GB18030 会在近期发布新版本,增加扩展 C 部分。
    需要说明的是在 GB18030 中扩展 B 部分并不是强制标准。
    如果想查看 GB18030 的标准文本,请访问 http://www.gb168.cn 中的强标阅读。 
    如果想了解 Unicode 的内容,请访问 http://www.unicode.org

     

    现在纠正网上普遍的一个错误:
    GB18030-2000 和 GB18030-2005 都不支持单字节的欧元符号 € (0x80),只有 GBK 1.0 支持,从标准原文可以得知。

    测试代码
    //GBK 的代码页为 936 (默认)
    string euro1 = Encoding.GetEncoding(936).GetString(new byte[] { 0x80 });
    //GB18030 的代码页为 54936
    //euro2 会显示为 ?
    string euro2 = Encoding.GetEncoding(54936).GetString(new byte[] { 0x80 });

     

    与简体中文有关的代吗页如下:
    936      gb2312                  简体中文(GB2312)----其实是GBK
    10008    x-mac-chinesesimp       简体中文(Mac)
    20936    x-cp20936               简体中文(GB2312-80)
    50227    x-cp50227               简体中文(ISO-2022)
    51936    EUC-CN                  简体中文(EUC)
    52936    hz-gb-2312              简体中文(HZ)
    54936    GB18030                 简体中文(GB18030)

     

    这是我的 Unicode 测试网址,你的系统能显示那些?
    http://www.hongcing.com/tool/unicode(进入连接后,可以点击下载,上午可能无法访问,下午、晚上正常访问)

     

    补充:刚才想到了,但是忘了写了。

    使用楷体_GB2312、仿宋_GB2312后,在 Windows 7/Vista/2008 中可能不再显示为对应的字体。

    这是因为 Windows 7/Vista/2008 中有楷体、仿宋,默认情况下没有楷体_GB2312、仿宋_GB2312,字体名称相差“_GB2312”。

  • 相关阅读:
    扩展运算符(Spread operator)
    增强的对象字面量,解构赋值
    ES6 模板字符串(template string)
    let和const
    svg实现放大效果
    svg制作风车旋转
    jquery实现某宝放大点击切换
    jQuery之文档处理
    jQuery之属性操作
    jQuery css操作
  • 原文地址:https://www.cnblogs.com/sier/p/5676459.html
Copyright © 2011-2022 走看看