V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
atuocn
V2EX  ›  分享发现

中英文 1:2 等宽字体

  •  
  •   atuocn · 2020-05-08 16:08:22 +08:00 · 3678 次点击
    这是一个创建于 1660 天前的主题,其中的信息可能已经有所发展或是发生改变。

    折腾了半天字体。

    起因是在 linux 下用 ReText 写 rst 格式文档,写标题的时候报错文字下的标记长度不够,明明是对对齐的。原因是中英文字体不是严格 1:2 等宽,1 个中文字宽度不等于 2 个英文字宽度,造成错觉。换了几个等宽字体也不行。

    搜索折腾了一番。总结如下:

    1. 最简单实用的办法是安装一个为中文优化过的等宽英文字体,设置字体时就选这个等宽英文字体。这种字体不多,例如:ubuntu mono 。据说还有 mplus fonts,应该是含有中日文的,没试过。

    2. gnome terminal 和 vim,gvim 有特殊处理,不用安装特殊字体,自动中英文 1:2 等宽。

    3. Windos 7 下,我记得有款达人自制的雅黑 Consolas 混合字体,挺棒的。中英文看起来都比较舒服。至于是不是中英文 1:2 等宽,有段时间没用 Windows 7,不太记得了。

    4. Windows 10 下,看程序心情。

      • 正常程序 notepad, notepad++, 选择普通的等宽英文字体,自动中英文 1:2 等宽。

      • 自制雅黑 Consolas 混合字体,不再中英文 1:2 等宽。

      • 较高版本的 Visual Studio 2012, 2017 、SQL Server Management Studio 2017, 字体不会自动等宽。进入抽风模式

        • 原本包含 1:2 等宽中英文的字体,如“新宋体”,能保持中英文 1:2 等宽
        • ubuntu mono,设置 12 号字体,能中英文 1:2 等宽
        • 其他字体,抽风
      • Visual Studio 2008, 抽风模式

    5. 其他:

      • Linux 下可能会找到一些修改 fontconfig 的办法。别折腾,弄来弄去不如安装字体实用。人家字体设计就没有为中英文比例设计。再说强行等宽也不见的好看。

      • Windows 下可能会有些 FontLink 方案,修改系统注册表的 SystemLink 。也别折腾,弄来弄去,重启注销 N 次也调不出个好结果。

        另:FontLink 时,有个缩放因子,比较难以调整把握,很难找到这个缩放因子的说明,附注一段找到的说明1, Mark 一下。

      如前所述,我找不到任何关于这两个缩放因子的详细资料,唯一能找到的相关信息就是开源软件 gdipp 的一个源程序文件。在这个文件里,Fontlink 里定义的两个缩放因子被用来以如下方式计算另外一个缩放参数:
      
      new_info.scaling = (factor1 / 128.0) * (96.0 / factor2);
      

    忽然惊喜的发现,自己原来写在 oschina 上的文章,找到入口了。自从它要求绑定手机后,因不想提供手机号,我再也没找到原来的文章。既然失而复得,转几个还有点价值的文章到这里,以免再次丢失。

    原文写于 2018/06/20 11:32

    2 条回复    2020-05-09 08:17:26 +08:00
    alan0liang
        1
    alan0liang  
       2020-05-08 22:32:50 +08:00 via Android
    Sarasa Gothic 它不香吗
    atuocn
        2
    atuocn  
    OP
       2020-05-09 08:17:26 +08:00
    原来的文章写于近 2 年前了。更纱黑体当时应该看过,为什么没用不记得原因了。有机会再试试。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2699 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 15:13 · PVG 23:13 · LAX 07:13 · JFK 10:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.