众所周知,Windows 中 cmd 控制台窗口的字体难看,但是修改注册表是可以实现修改其字体的,但很多很棒的编程字体是没有中文的,所以在显示中文时直接调用了宋体,这绝妙的反差实在是 不忍直视。但是,用过 Mactype 的同学应该记得 Mactype 配置文件里有个字体替换吧,没错,就是 FontLink 。

更改控制台编码

  首先更改一下 cmd 的编码为 54936 或别的什么(到这里查看其他编码的标识号码),成功会显示 "Active code page: 54936" 。
  1.     chcp 850
    

添加字体

  再将简单将字体设置为自己喜欢的编程字体,如 Ubuntu Mono、Source Code Pro 这类的。注册表进入

  1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
    
  会看到类似这样的内容(不支持字体替换的编码就是下图中非0键——932、936、949、950):
  其中名为 0、00、000、... 的键是默认编码下的字体,932、936 则是编码为 932/936 下的字体。这里我们新建一个名为 "0" 的字符串,如果已经有同名则增加一个 "0"。(比如说在上图的基础上添加字体就是"00000")双击这个键修改键值为字体名称,不知道字体名称的可以打开记事本,在字体设置下查看。
  这样字体就添加完成了,右键 cmd 窗口标题栏可以设置。如果设置成功那么就会发现字体变美了:

FontLink

  那么接下来就是使用 FontLink 实现中英文混合显示,FontLink 能够为英文字体指定相应的中文字体(例如:在显示中英文混合字体时,选用英文字体,那些英文字体显示不了的汉子就会优先使用此处指定的中文字体显示,如果不指定那么就会使用系统默认字体,一般是宋体)。注册表进入

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
  你会发现有很多名称为字体名的键,这就是为什么我们使用英文字体时仍然可以正常显示中文。
  现在我们需要自己建立一个这样的键,新建多重字符串键"Source Code Pro"(这个是你之前设置的字体名称,键类型为 Multi-String),然后照下图输入:
 
  这里的 SIMYOU.TTF 就是幼圆字体的文件名,其后跟的数字是用来调整中文字体大小使其能和英文字体相匹配(默认是 128,96这里中文字体:英文字体为 1.6:1,所以设置为 128*1.2,96*1.2 即 154,115)。当一个汉字的宽度等于两个小写字母,即两者匹配。
第二行重复的 SIMYOU.TTF 是为了使 GDI+ 能够识别该字体,第一行则是 GDI 调用。
 
  设置完重启系统后就OK了。
 

修改 cmd 控制台字体、巧用 FontLink 使中英文独立设置的更多相关文章

  1. 修改cmd的字体

    通常打开的cmd默认的字体比较小,字体只有宋体和新宋体两种,如果要修改,需要通过修改注册表才行. 打开regedit后,找到如下路径HKEY_LOCAL_MACHINE\SOFTWARE\Micros ...

  2. 修改cmd的字体为Consolas字体

    Windows Registry Editor Version 5.00    [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]    ...

  3. Cmd控制台修改编码方法

    Cmd控制台修改编码方法 一.前言 在Unbuntu中用sqlite3-command-line操作sqlite3还好好的,到了windows下查询表内容时发现中文全部乱码了!马上想到sqlite3内 ...

  4. 【190】修改 PowerShell & CMD 显示字体

    方法一:Windows7更改替换cmd(powershell)字体完全方法教程 说明:该方法将字体修改成只能显示英文,对于某些中文会乱码!(chcp 850) 方法二:添加中文字体(chcp 936) ...

  5. Win10 中修改cmd字体引发的问题

    Win10 中修改cmd字体引发的问题 学习了:https://www.cnblogs.com/Diryboy/archive/2015/12/05/Use-Consolas-MSYaHei-in-C ...

  6. 修改cmd为utf-8编码:

    1.组合键WIN+R键,组合键后就会弹出窗口,然后输入CMD,回车: 2.要修改成UTF8编码,输入命令CHCP 65001(设置为65001): 3.鼠标放在命令窗口的标题部分右键,在弹出的右键菜单 ...

  7. win10 修改cmd终端编码格式为utf8

    最近在使用ssh 连接服务器时,好多中文显示为乱码,查明原因,是因为自己cmd终端编码给是为gbk,而服务器编码格式为utf8,所以需要修改cmd终端编码格式为utf8,但是网上看到好多解决方案是 1 ...

  8. cmd控制台中文乱码解决办法

    1.打开cmd控制台,在命令行输入chcp后回车可以查看到当前的字符编码.如果是乱码的话,这时通常是936,代表的是GBK编码. 2.在命令行输入chcp 65001后回车.65001代表的是UTF- ...

  9. 修改美化Matlab字体

    修改美化Matlab字体    MATLAB作为高校理工科类本科生或研究生必不可少的科研工具已经有着很多年的历史,以至于在我们的大学生活里或科研工作中,MATLAB处处闪现着它的身影,给我们带来了不少 ...

随机推荐

  1. vue a href="tel" 拨打电话

    走默认的方式失败 <a href="tel:{{telPhone}}">{{telPhone}}</a> 走字符串拼接方法成功 <a :href=&q ...

  2. JS和C#对Json的操作

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式.博主记得几年前在华为外包项目中有一个和Android应用交互的需求,Andr ...

  3. promise的学习心得记录

    这里只讲promise,和async的使用方法,不会讲他们的原理. Promise 是异步编程的一种解决方案,可以用于取代传统的回调函数,该变那些函数层层嵌套调用的尴尬局面. 1)promise 基本 ...

  4. Hadoop序列化与Writable接口(一)

    Hadoop序列化与Writable接口(一) 序列化 序列化(serialization)是指将结构化的对象转化为字节流,以便在网络上传输或者写入到硬盘进行永久存储:相对的反序列化(deserial ...

  5. Oracle修改主键约束

    项目需求,有张表,原有三个联合主键,现在需要再加一个字段进去,而恰恰这个字段可以为空的.去数据库捞了一把,还好数据都不为空: SQL> select count(*) from t_wlf_re ...

  6. SVN checkout 出的项目在PHPstorm中打开没有subversion(SVN)选项按钮怎么办?

    对于svn add 命令的批量操作,为了操作简便还是习惯在IDE中完成,有时候新checkout出的项目,在PHPstorm中右键菜单中没有 Subversion 按钮,操作如下: 点击VCS按钮,然 ...

  7. Java垃圾回收原理

    无意中在网络上找到了这篇介绍垃圾回收机制的文章,好文!转一下: 垃圾回收器是如何工作的?我现在就简单的介绍一下 首先要明确几点: Java是在堆上为对象分配空间的 垃圾回收器只跟内存有关,什么IO啊, ...

  8. Linux:WebServer(Nginx 虚拟主机配置与伪静态实现)

    ps + 查看方式  |  grep  +  服务/端口/软件等:查看状态: 一.基本操作 Nginx 多用于商业系统: 一个端口只能被一个服务使用: Nginx 可以同时监听多个端口,也就是配置时, ...

  9. Charles修改返回值的方法(构造返回值最大值的情况,比如100,99) (自己没有试过)

    第一步:save respond到电脑 第二步:打开文件,修改相应的参数 第三步:导入修改后的文件 第四步:手机刷新数据,查看结果

  10. 一些Java相关的

    都是从<Thinking in Java>英文第四版中摘抄的 _______________________________________________________________ ...