使用随 TeXLive 安装的 OTF/TTF 字体

使用随 TeXLive 安装的 OTF/TTF 字体

我注意到我的新 TexLive 2012 中打包了大量 OTF 和 TTF 字体。例如,Asana-Math OTF 字体位于

$TEXMFDIST/fonts/opentype/public/Asana-Math

并且 TTF 位于不同的位置。我可以在 fontspec 中使用它吗?没有将它安装在我的系统字体中,还是指定它的绝对路径?

答案1

如果您只想使用 UTF-8 TeX 衍生字体(XeTeX 和 LuaTeX),则无需将它们安装在系统字体文件夹中。根据您的操作系统和引擎选择,使用字体名称可能不如使用字体文件名可靠。因此,无论您使用的是系统范围字体还是 TeX 树字体,我都倾向于使用后者。

例如,

\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Asana-Math.otf}
\begin{document}
$y = mx + c$
\end{document}

在我的系统上可以使用 XeLaTeX 和 LuaLaTeX,但我没有在系统范围内安装 Asana Math(IE在例如 Word 中不可用)。

答案2

将文件复制到

$TEXMFLOCAL/fonts/truetype/.../

然后在运行 MiKTeX 时运行texhash或更新数据库。然后您可以使用字体名称来使用该字体,例如

\usepackage{fontenc}
\setmainfont{Helvetica Neue}

如果你正在运行 Linux,那么你可以将文件保存在 下/home/$USER/.fonts/,运行它fc-cache,它将被找到xelatex

答案3

使用 LuaTeX,你可以使用 TeX Live 安装的字体(即在 TEXMF 树下),就像使用系统字体一样。XeTeX 尚不支持此功能,但在 Linux/Windows 上,你可以按照说明操作这里使 TeX Live 字体在整个系统内可用,以便 XeTeX 可以找到它。

或者,您可以通过文件名调用字体,这适用于两个引擎中的 TEXMF 树字体,但如果您想使用多种字体样式,这可能会有点复杂。查看fontspec有关如何通过文件名加载字体的文档。

相关内容