这与提出的问题有关这里,尽管我无法从那里找到答案。
我在 macOS 系统上使用 TeX Live,并使用 进行编译xelatex
,使用以下代码设置字体:
\usepackage[bold-style=ISO]{unicode-math}
\usepackage{parskip}
\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont{TeX Gyre Pagella}[Scale = 1.0]
当我使用上述方法使用字体时TeX Gyre Pagella
出现以下错误:
Package fontspec Error: The font "TeX Gyre Pagella" cannot be found.
从评论中的讨论来看另一个问题我认为我可能需要将字体添加到字体册中。事实上,字体似乎不在其中。
我是否应该自己下载并安装这些字体?或者它们应该已经通过 texlive 安装好了?如果是前者,那么推荐从哪里下载并安装这些字体?
答案1
在 macOS 上安装字体的另一种方法是通过自制.打开终端并执行:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
和
brew tap homebrew/cask-fonts
最后调用:
brew cask install font-tex-gyre-pagella font-tex-gyre-pagella-math
瞧,字体就在您的系统上了。
无论如何。根据经验法则:如果您使用xelatex
,请通过文件名指定字体:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{texgyrepagella-regular.otf}
\setmathfont{texgyrepagella-math.otf}
\begin{document}
Hello \(a + b \)
\end{document}
如果您使用lualatex
,则可以使用字体名称:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
\begin{document}
Hello \(a + b \)
\end{document}
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
CNHKTM+TeXGyrePagella-Regular CID Type 0C Identity-H yes yes yes 4 0
EHBZSS+TeXGyrePagellaMath-Regular CID Type 0C Identity-H yes yes yes 5 0
这种行为也记录在fontspec 手册:
答案2
答案3
如果您通过文件名而不是字体名称来选择字体,则不会遇到问题。另一方面,使用字体名称当然很好,这样您就可以创建一个符号链接/Library/TeX/Root/texmf-dist/fonts/opentype
;~/Library/Fonts
例如ln -s /Library/TeX/Root/texmf-dist/fonts/opentype ~/Library/Fonts/TeXOTFFonts
(当然都在一行上)。当您打开 Font Book 时,您可能必须将该文件夹拖放到 Font Book 上以让其注册字体。