Adobe Garamond Pro 无法与 XeLaTeX 一起使用

Adobe Garamond Pro 无法与 XeLaTeX 一起使用

Adobe Garamond Pro 和 XeLaTeX 伙计们,我正在尝试使用 XeLaTeX 来使用 opentype 字体。现在,我正在尝试使用 Adob​​e Garamond Pro。它说

\zf@basefont=Garamond无法加载 10.0pt 字体:未找到 Metric (TFM) 文件或已安装的字体。

我的操作系统是 Fedora 12。/usr/share/fonts 包含文件夹名称 linux-libertine 和 Garamond,其中包含 .otf 文件。使用 Linux Libertine 时,Latex 没问题,但 Adob​​e Garamond Pro 会显示错误。请参阅以下代码:

对于 Linux Libertine

\documentclass[10pt]{book}
\usepackage{xltxtra}
\setmainfont{Linux Libertine} % could be any Unicode font
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{document}

输出: 替代文本

现在使用 Garamond - 代码

\documentclass[10pt]{book}
\usepackage{xltxtra}
\setmainfont{Garamond} % could be any Unicode font
%\setmainfont{Adobe Garamond Pro} % could be any Unicode font
%\setmainfont{AGaramond Pro} % could be any Unicode font
%I have used all possible combination.
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{document}

输出为空白文件

The log says something like this:
(/usr/share/texmf/tex/latex/base/fixltx2e.sty))
! Font \zf@basefont=Garamond at 10.0pt not loadable: Metric (TFM) file or insta
lled font not found.
\zf@fontspec ...ntname \zf@suffix " at \f@size pt 
                                                  \unless \ifzf@icu \zf@set@...
l.3 \setmainfont{Garamond}
                           % could be any Unicode font
? 

正如你所看到的,我已经尝试了所有可能的方法来命名字体。

那么我该怎么做才能解决这个严重的问题?

PS 两种字体都安装在我的电脑上了。验证:

ls -R /usr/share/fonts/linux-libertine/ /usr/share/fonts/linux-libertine/: LinBiolinumB.ttf  LinLibertineBI.ttf  LinLibertineC.ttf  LinLibertine.ttf LinBiolinum.ttf   LinLibertineB.ttf   LinLibertineI.ttf

ls -R /usr/share/fonts/Garamond/
/usr/share/fonts/Garamond/:
AGaramondPro-BoldItalic.otf  AGaramondPro-Regular.otf
AGaramondPro-Bold.otf        AGaramondPro-SemiboldItalic.otf
AGaramondPro-Italic.otf      AGaramondPro-Semibold.otf

答案1

对我来说,您的示例运行得很好,如下所示:

\setmainfont{Adobe Garamond Pro}

取消注释(并且前一个被注释掉)。

我怀疑字体没有缓存。尝试运行[sudo] fc-cache -fv

答案2

使用fc-query <font-name>并检查家庭或许还有全名字段以确保您已尝试使用正确的名称。

如果这不起作用,请使用类似命令fc-list | grep -i gara来确保系统知道该字体。如果系统不知道,请运行fc-cache -v并重试。

如果这不起作用,那么我就没有其他主意了。

答案3

对于可能遇到此问题的其他人,请注意:如果给定的字体似乎不起作用,请尝试使用不带附加软件包的最小文档。例如,软件包ngerman可能会干扰字体加载并产生上面显示的消息。

答案4

对于在 OS X 上遇到此问题的用户,以下是一条提示。您的 OS X 字体缓存可能以某种方式损坏。要重置此缓存,请执行以下操作:

  • sudo atsutil databases -remove
  • atsutil server -shutdown
  • atsutil server -ping

第一个删除所有用户字体缓存,第二个关闭字体服务器,第三个重新启动它(可能需要一点时间)。

相关内容