我需要 MS Core 字体才能将它们与 XeLaTeX 一起使用。我不想要它们在其他地方。
我尝试了两种方法来获取这些字体:
fetchmsttfonts
转速包msttcore-fonts-installer
从http://mscorefonts2.sourceforge.net(因为 fetchmsttfonts 不可用)
AFAIK 都执行相同的操作:下载 MS 的 *.exe 文件,将其解压以获取 *.ttf,然后在系统范围内安装这些 *.ttf。之后,XeLaTeX 就可以工作了,所以没问题。
然而,由于某种原因,这些新字体即刻感染我的桌面。在安装过程完成之前,我的所有 Firefox/Leafpad/Terminal 字体都已切换为新下载的字体。
我觉得这完全令人困惑。为什么在世界上安装一种字体自动地开关整个系统到它?有没有办法只安装字体并保持桌面不变?
我的操作系统是 OpenSuSE 13.2/42.1(在不同的机器上),DE 是 XFCE。
答案1
如果您要在 LaTeX 文档中使用 TTF 字体,最好的解决方案可能是使用 LuaLaTeX,您可以在其中直接使用 TTF 字体。无需安装,只需将它们放入 tex 源旁边的“fonts”目录中,然后使用 fontspec 包加载它们,例如:
% set and load fonts
\usepackage{fontspec}
\setmainfont[
Ligatures = TeX,
ExternalLocation,
Path = {./fonts/},
Extension = {.otf},
UprightFont = {*Regular},
BoldFont = {*Bold},
ItalicFont = {*Italic},
BoldItalicFont = {*BoldItalic}]{Charter}
\setsansfont[
Ligatures = TeX,
Scale = MatchLowercase,
ExternalLocation,
Path = {./fonts/},
Extension = {.ttf},
UprightFont = {*},
BoldFont = {*-Bold},
ItalicFont = {*-Oblique},
BoldItalicFont = {*-BoldOblique}]{Helvetica}
\setmonofont[
Ligatures = TeX,
Scale = MatchLowercase]{Latin Modern Mono}