解决Ubuntu下latex编译缺少中文字体的错误

1. 绪言
  • 按照之前博客记录的方式,在Ubuntu 18.04中安装好了latex + vscode的编辑环境。
  • 编译英文文档时,不存在问题,但是编译带有中文的毕业论文时,出现了错误:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
./thesis-uestc.cls:58: fontspec error: "font-not-found"
! 
! The font "simhei" cannot be found.
! 
! See the fontspec documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  
                                                  
l.58   \newfontfamily{\heiti@letter}{simhei.ttf}
  • 查阅相关文档,发现simhei.ttf对应的是windows系统下的中文黑体
  • 很多博客都指出,Ubuntu下latex对中文字体的支持不是很友好,需要从windows系统拷贝中文字体解决问题。
2. 解决字体缺失问题
① 查看Ubuntu系统是否有缺失字体
  • 有时候,字体的缺失可能是Ubuntu系统没有该字体,也有可能存在该字体,但是没有放到对应的文件夹下。
  • 输入以下命令查看Ubuntu系统中的中文字体:
$ fc-list :lang=zh

解决Ubuntu下latex编译缺少中文字体的错误_第1张图片- 在输出的结果中查找缺失的simhei.ttf,发现确实没有。

② 从网络上下载缺失的字体
  • 百度输入simhei.ttf 下载,查找可以下载的资源。我在搜索结果中,选择的是第一个。
    解决Ubuntu下latex编译缺少中文字体的错误_第2张图片
  • 完成下载后,加压缩文件,可以得到simhei.ttf文件。
    解决Ubuntu下latex编译缺少中文字体的错误_第3张图片
③ 完成字体的安装
  • 创建文件夹/usr/share/fonts/winfonts,用于存放缺失的字体:
$ sudo mkdir /usr/share/fonts/winfonts
  • 更改文件夹权限:
$ sudo chmod -R 0777 /usr/share/fonts/winfonts
  • 将缺失的字体拷贝刚才创建的目录下:
$ sudo cp -rf simhei.ttf /usr/share/fonts/winfonts
  • 刷新字体库:
$ sudo mkfontscale
$ sudo mkfontdir
$ sudo fc-cache -fsv
  • 再次编译,发现simhei.ttf缺失的问题已经解决!

参考文档:在Ubuntu下安装和编译LaTex

你可能感兴趣的:(论文)