众所周知,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. java 二维码生成(vcard)

    1. maven 依赖 <dependency> <groupId>com.googlecode.ez-vcard</groupId> <artifactId ...

  2. 解压RPM包

    有时我们需要RPM包中的某个文件,如何解压RPM包呢? RPM包是使用cpio格式打包的,因此可以先转成cpio然后解压,如下所示: rpm2cpio xxx.rpm | cpio -div 例如: ...

  3. 解决ueditor中没法动态配置imageurlprefix的方法

    [建议使用右边文章中的方法,本篇文章没有真正的解决问题](新)解决php版本ueditor中动态配置图片URL前缀(imageurlprefix)的方法 修改背景,由于后台图片是上传到挂载的静态资源磁 ...

  4. oracle版本及字符集查询

    查询oracle版本:select * from v$version; 查询oracle字符集:select * from nls_database_parameters;

  5. 给DB2增加删除字段二三事

    加字段用这个,CS.TG表名,LINE2_TYPE字段名,CHAR(1)字段类型 ALTER TABLE CS.TG ADD COLUMN LINE2_TYPE CHAR(1); 要是加错了用以下语句 ...

  6. WPF ComboBox下拉绑定Treeview 功能的实现

    因为项目需要,接触到这个功能点,借助网络还有自己的一点摸索,实现了这个功能.相关代码如下: XAML部分的代码: <ComboBox Grid.Row=" RenderTransfor ...

  7. java代码----数据类型的转换-----int --->String

    总结:int ----->String package com.a.b; //测试..char--->int // int--->String public class Yue2 { ...

  8. 【原】C++11并行计算 — 数组求和

    本文转载请注明出处 -- polobymulberry-博客园 0x00 - 前言 最近想优化ORB-SLAM2,准备使用并行计算来提高其中ORB特征提取的速度.之前对并行计算方面一窍不通.借此机会, ...

  9. mysql索引之一:索引基础(B-Tree索引、哈希索引、聚簇索引、全文(Full-text)索引区别)(唯一索引、最左前缀索引、前缀索引、多列索引)

    没有索引时mysql是如何查询到数据的 索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点.考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储10 ...

  10. 使用SLF4J和LOGBACK (一 : 基本使用)

    1.SLF4J是什么? slf4j是一个日志门面,它不是具体的日志实现框架,而是提供了通用的日志接口,按个人理解来说,是通过接口实现多态,来满足应用在不同日志框架间切换的需求. 例如在程序中我们需要记 ...