假装认真的LaTeX学习笔记(2)—— LaTeX中如何修改字体
简介(太长可跳过)
很多朋友在使用LaTeX排版的时候经常会吐槽LaTeX默认的字体(但是也有些朋友认为这种字体才能突出LaTeX的优越 手动滑稽 ),其实LaTeX的字体更改十分简单,只需要知道字体的名字+使用fontspec宏包就可以完成了。
那么,什么是fontspec宏包呢?
Fontspec is a package for XeLaTeX and LuaLaTeX. It provides an automatic and unified interface to feature-rich AAT and OpenType fonts through the NFSS in LaTeX running on XeTeX or LuaTeX engines.
(来自fontspec官网:https://ctan.org/pkg/fontspec)
fontspec是一个基于XeLaTeX和LuaLaTeX的宏包(此处划重点)。它通过NFSS为LaTeX中的XeLaTeX和LuaLaTeX引擎提供了一个统一的AAT和OpenType字体。简单来说,fontspec能使我们愉快的在LaTeX中修改字体。
在fontspec官网可以直接下载它的zip包和文档,以及找到它的GitHub链接。可以看到fontspec的最新版本是2.7b,并不大,只有1.3M。经验告诉我们,凡事不懂都要读文档。 所以,各位可以先下载fontspec繁琐的官方文档然后再回来阅读本文。
使用环境
- Windows 10
- TeX Live 2018
- LaTeX Package: fontspec 2.7b
注:更加详细的软件下载链接请访问本系列序言文章
假装认真的LaTeX学习笔记(0)——序言(内含软件下载链接)
如何在LaTeX中修改字体
fontspec宏包使用方法
最简单的方法——全文更换字体
fontspec宏包最简单也是最常用的方法就是更改整篇文章的正文字体。
- 首先,使用
\usepackage{fontspec}
导入宏包 - 在
\begin{document}
外添加以下语句\setmainfont{FONT_NAME}
,其中FONT_NAME
替换为字体名字,如\setmainfont{Times New Roman}
fontspec宏包注意事项
- 由于这个宏包是为XeLaTeX和LuaLaTeX开发的,所以在编译时要注意不能使用PdfLaTeX,否则会出现编译错误。
(建议使用XeLaTeX,编译速度明显快于LuaLaTeX)
Errors:
d:\ruanjian\texlive\2018\texmf-dist\tex\latex\fontspec\fontspec.sty:44: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! [\msg_fatal:nn {fontspec} {cannot-use-pdftex}]
- 使用setmainfont的方法只能改变文章正文字体(包括标题、表格等),而不会修改数学公式的字体。
相关文章
参考文献
[1] CTAN.[EB/OL]. http://mirrors.ustc.edu.cn/CTAN/macros/latex/contrib/fontspec/fontspec.pdf.-2019.03.10.