很多人都遇见过刚装完的 Linux Mint 界面字体是黑体,然后莫名其妙就变成楷体的问题。

先不说技术层面的原因,只说怎么解决。

造成这种情况,多数是安装输入法或其他某种软件的时候,同时安装了 AR PL UKai、AR PL UMing 字体,所以网上大多的解决办法都是删除这两个字体,如果只删除 AR PL UKai,界面字体会换成明体(宋体):
$sudo apt-get remove fonts-arphic-ukai fonts-arphic-uming

如果后悔了,就再把字体装回来:
$sudo apt-get install fonts-arphic-ukai fonts-arphic-uming

也可以安装 ubuntu 的字体管理器,然后禁用 ukai 和 uming。(见 https://wenku.baidu.com/view/d5bc427904a1b0717fd5ddd2.html)

如果想有楷体和宋体用,又想让界面显示为默认黑体,可以删除对应的字体配置文件,通常是这两个文件:

$sudo rm /etc/fonts/conf.d/65-fonts-arphic-ukai.conf /etc/fonts/conf.d/65-fonts-arphic-uming.conf

如果想还原:

$sudo ln -s /etc/fonts/conf.avail/65-fonts-arphic-ukai.conf /etc/fonts/conf.d/65-fonts-arphic-ukai.conf

$sudo ln -s /etc/fonts/conf.avail/65-fonts-arphic-uming.conf /etc/fonts/conf.d/65-fonts-arphic-ukming.conf

有时候还会出现系统中已有 AR PL Ukai 和相关配置文件,却依然显示为黑体,通常是因为有 Droid-sans-fallback 字体被安装。想让界面显示为楷体:
$sudo rm /etc/fonts/conf.d/65-droid-sans-fallback.conf

恢复的方法:

$sudo ln -s /etc/fonts/conf.avail/65-droid-sans-fallback.conf /ect/fonts/conf.d/65-droid-sans-fallback.conf

原因:

linux在使用字体的时候,是按照fontconfig的配置来处理的。

在一个字体中,找不到指定的文字时,就会按照指定的替代字体顺序,查找替代字体,直到找到可以显示这些文字的字体为止。

这个顺序有三个,一是如果使用了硬绑定,则优先使用硬绑定的字体;没有硬绑定,或者硬绑定级别相同的字体,则按照其字体覆盖范围决定优先级;覆盖范围也相同,则按照配置指定的顺序。

出现上文的情况,是因为三种替换字体的优先级分别是 Droid-sans-fallback > AR PL UKai > 默认黑体

只要把优先级高的配置文件删除,就会使用低一级的字体配置了。

配置文件默认读取 /etc/fonts/conf.d 文件夹中的 .conf 文件,但这些文件的原始文本在 /etc/fonts/conf.avail 文件夹中,/etc/fonts/conf.d 中的文件仅是软件连接。因此删除后要恢复,只要把原来的配置文件 link 到 /etc/fonts/conf.d 中就可以了。

Linux Mint 楷体问题的更多相关文章

  1. Linux mint xfce 19 使用记录

    创建系统快照 创建系统快照是 Linux Mint 19 的重要建议,可以使用与更新管理器捆绑的 Timeshift 应用程序轻松完成创建与恢复. 这个阶段很重要,万一出现令人遗憾的事件,比如安装破坏 ...

  2. 安装linux mint 18.3 后要做的

    使用u盘安装的linux mint 18.3,安装过程基本顺利 发现在安装过程中使用中文语言的话会使得下载附加软件的速度快很多 安装完成之后要做的事情有: 1.字体 默认的楷体字比较难看,在软件管理器 ...

  3. 在Linux Mint上安装node.js和npm

    1.安装Node.js 前端开发过程中,很多项目使用npm的http-server的模块来运行一个静态的服务器,我个人在Dell的笔记本上安装的是Linux Mint最新版本,所以想尝试一下在Linu ...

  4. 在Ubuntu和Linux Mint上安装Oracle JDK

    在Ubuntu和Linux Mint上安装Oracle JDK 使用下面的命令安装,只需一些时间,它就会下载许多的文件,所及你要确保你的网络环境良好: sudo add-apt-repository ...

  5. 安装Linux Mint

    1.尽量选择trusty的安装版本,kde和xfce不支持Win+..快捷键,推荐cinnamon:制作安装U盘后,选择非EFI模式启动:选择start Linux Mint(就是第一项): 2.In ...

  6. Linux Mint 17使用小结

    用过蛮多的linux系统 linux mint是我比较喜欢和常用的一个系统,装的是linux mint xfce 64位版本,在这里记录使用中遇到的一些问题及解决的方法,备忘,方便以后查看. 1.首先 ...

  7. Linux mint 18版本开启SSH服务

    linux mint 18版本默认是没有安装ssh server的 需要手动安装 安装ssh server: 此命令需要联网,会自动下载安装 安装之后看是否开始了ssh, 看到ssh-agent 和s ...

  8. Linux mint 14输入法问题

    新安装了Linux mint 14,莫名其妙地没有了中文输入法,安装并设置IBUS为默认输入法,但怎么也没反应.点击输入法图标,上面显示“No input window”,其实这不关输入法自身程序和设 ...

  9. linux mint 崩溃

    换完linux mint 今天突然崩溃了.出现如下错误 因为是双屏.一个屏幕显示一般,这么不重要.搜了一下,找到解决方案 解决办法 ctrl+atl+f1 login sudo apt-get ins ...

随机推荐

  1. React Native 填坑一

    React Native 填坑一 关于RN的布局 分为主轴和交叉轴, 主轴可以是横向也可以是竖向,交叉轴也是对应的. 主轴默认是竖向.如果要更改用flexdirection 主轴对齐方式:justif ...

  2. gorm中数据库datetime类型的映射和time.Time的格式化

    如果在结构体中设置time变量的类型是time.Time,那么gorm取出来的时间格式将会是”2006-01-02 15:04:05.999999999 -0700 MST“东八区时间,在time.T ...

  3. 第八章 高级搜索树 (xa1)红黑树:动机

  4. OC 线程操作 - GCD队列组

    1.队列组两种使用方法2.队列组等待 wait /** 新方法 队列组一般用在在异步操作,在主线程写队列组毫无任何作用 */ - (void)GCD_Group_new_group___notify{ ...

  5. ArrayList与LinkedList的基本添加删除方法 模拟栈 队列

    ArrayList  LinkedList ArrayList的add是在末尾添加 linkedlist也是 offer加在末尾 poll获取并移除此列表的头(第一个元素) peek 获取第一个但不移 ...

  6. apache配置防盗链

    1.确保apache已开启rewrite.   2.在.htaccess文件中添加如下: RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://X ...

  7. 使用jsonp跨域发送请求

    如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型. 使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的URL后面. ...

  8. Js下载文件到本地(兼容多浏览器)

    在客户端通过js下载文件,试过几种下载方式,iframe方式仅限于IE浏览器,window.open(url),location.href=url 这两种方式在chrome浏览器还会是直接打开文件而不 ...

  9. boost 学习(1)

    智能指针的学习 中文教程网站 http://zh.highscore.de/cpp/boost/ 不过代码可能 由于BOOST 版本不同需要稍作修改 scoped_ptr 离开作用域则自动调用类析构函 ...

  10. 使用kindeditor 4.1.7 编辑器 注意事项,上传图片失败 问题 ,

    <script charset="utf-8" src="editor/kindeditor.js"></script> <scr ...