使用 fontspec 包时字体形状“EU1/pcr/m/n”未定义/texttt 宽度不固定

使用 fontspec 包时字体形状“EU1/pcr/m/n”未定义/texttt 宽度不固定

当我在 OSX 安装的 TeX Live 2016 上使用该软件包时,无法使用等宽字体。fontspec我可以指定和渲染其他字体,例如 Adob​​e Garamond Pro 和 Helvetica Neue,但当我尝试将 Courier New 用于我的单字体时,渲染的字体不是 Courier,甚至不是固定宽度的字体;我很确定它是 Computer Modern 或类似的可变宽度字体。

请注意,我在编译时收到以下警告;当我删除包fontspec\setmainfont调用时,我的\texttt文本会正确显示为固定宽度字体。但是,其他字体并不如我所愿(Garamond、Helvetica),所以我尝试使用 使其正常工作fontspec。我也尝试\usepackage{courier}使用fontspec但问题仍然存在。我还尝试在我的调用中使用其他固定宽度字体,例如 Inconsolata \setmonofont;没有警告(它找到了字体)但它仍然呈现 Computer Modern。当我\setmonofont完全删除时,它仍然会做同样的事情。

我发现了许多与缺少字体相关的 SO 帖子,但没有一个与这个特定问题有关,也没有我与 的明显互动fontspec。坦率地说,我甚至不知道 EU1/pcr/m/it 是什么,也不确定如何调试这个问题。我很感激任何调试技巧,以及这个问题的解决方案。

LaTeX Font Warning: Font shape `EU1/pcr/m/it' undefined
(Font)              using `EU1/pcr/m/n' instead on input line 85.

以下是文档:

\documentclass[12pt]{article}

\linespread{1.25}

% TODO: this is causing monofonts to break
\usepackage{fontspec}

\setromanfont{Adobe Garamond Pro}
\setsansfont{Helvetica Neue}
\setmonofont{Courier New}

%\usepackage{courier} % also tried this and it also doesn't work

\begin{document}

\textit{italics here}
\textbf{bold here}
\texttt{monospaced here code\_goes\_here}
{\ttfamily This text is using the \textbf{Andale} \textit{Mono} font}

\end{document}

关于我的乳胶构造的详细信息:

pdfTeX 3.14159265-2.6-1.40.17 (TeX Live 2016)
kpathsea version 6.2.2
Copyright 2016 Han The Thanh (pdfTeX) et al.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.21; using libpng 1.6.21
Compiled with zlib 1.2.8; using zlib 1.2.8
Compiled with xpdf version 3.04

答案1

这与xelatex或一起使用效果很好lualatex

\documentclass[12pt]{article}
\usepackage{fontspec}

\setromanfont{Adobe Garamond Pro}
\setsansfont{Helvetica Neue}
\setmonofont{DejaVu Sans Mono}[Scale=MatchLowercase,FakeStretch=0.9]

\begin{document}

\textit{italics here}
\textbf{bold here}
\texttt{monospaced here code\_goes\_here}
{\ttfamily This text is using the \textbf{Andale} \textit{Mono} font}

\end{document}

在此处输入图片描述

相关内容