根据默认字体创建新的字体系列

根据默认字体创建新的字体系列

我在 Mac 上运行 XeLaTeX,在寻找字体时遇到了很多麻烦。

这是我的代码(取自这里:重新审视 TIPA 和 Fontspec

\documentclass[12pt]{article}

\usepackage{environ}
\usepackage[no-math]{fontspec}

\newfontfamily{\tipacm}{CMU Serif}

\NewEnviron{IPA}{\expandafter\textipa\expandafter{\BODY}}
\renewcommand\useTIPAfont{\tipacm}

\begin{document}

\normalfont
\textipa{k\textscripta T\'{a}}
\textipa{kAT\'{a}}
\begin{IPA}
  kAT\'{a}
\end{IPA}

\end{document}

每当我运行它时,我都会收到“未找到字体”错误。当我搜索fc-list任何看起来像“计算机现代”或任何变体或缩写的东西时,我什么也找不到。

但显然,我的电脑确实安装了 Computer Modern,因为它可以正常制作这些默认 pdf。我想用\newfontfamily{\tipacm}默认字体制作一个新的字体系列(例如)?如果它使用字体制作 pdf,难道我不应该能够制作它的重命名副本而无需从外部加载某些东西吗? 本质上,我想创建一个新的字体系列,而不必加载任何依赖于文件路径的内容。

从理论上讲,我想要的是类似这样的东西:\newfontfamily{\tipacm}{\currentdefaultfontfamily}

答案1

最好是也在该/Library/Fonts文件夹中安装 CMU。否则,您可以使用稍微复杂的代码获得相同的效果:

\documentclass[12pt]{article}

\usepackage{environ}
\usepackage[no-math]{fontspec}

\newfontfamily{\tipacm}[
  Extension=.otf,
  UprightFont=*rm,
  %ItalicFont=*ti,% no IPA here
  BoldFont=*bx,
  %BoldItalicFont=*bi,% no IPA here
]
{cmun}

\NewEnviron{IPA}{%
  \expandafter\textipa\expandafter{\BODY}%
}
\renewcommand\useTIPAfont{\tipacm}

\begin{document}

\normalfont
\textipa{k\textscripta T\'{a}}
\textipa{kAT\'{a}}
\begin{IPA}
  kAT\'{a}
\end{IPA}

\textbf{\textipa{A}}

\end{document}

在此处输入图片描述

为了在系统中安装字体,请打开一个新的 Finder 窗口,按 Command-Shift-G 并在打开的框中输入,

/usr/local/texlive/2015/texmf-dist/fonts/opentype

打开另一个 Finder 窗口并按相同方式操作/Library/Fonts。现在将文件夹cm-unicode从第一个窗口复制到第二个窗口。

答案2

CMU Serif不是 Mac OSX 系统字体的一部分。您必须让系统识别 TeXLive (MacTeX) 字体:

运行kpsewhich --var-value TEXMFLOCAL将显示本地树的目录。这是 Mac 的默认设置,~/Library/texmf/但您的机器可能有所不同。然后将字体文件保存到其中,并在保存文件后~/Library/texmf/fonts/opentype/运行以更新文件名数据库。texhash

相关内容