在 OS X Mavericks 中,如何让 fontspec 避免使用 Charter 的黑色斜体?

在 OS X Mavericks 中,如何让 fontspec 避免使用 Charter 的黑色斜体?

OS X Mavericks 在 中包含了字体 Charter 的副本/Library/fonts/Charter.ttc。此文件提供六种变体:罗马字体、斜体、黑色、粗体、黑色斜体和粗斜体。

如下例所示,\textit{text}生成粗体斜体而不是普通斜体,并且\textbf{text}生成黑色文本而不是粗体。

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Charter}
\begin{document}
Here are some \textit{italics} that should not be so \textbf{bold}.
\end{document}

这是使用 编译的屏幕截图(适用于非 Mac/Mavericks 用户)xelatex

在此处输入图片描述

我如何说服 fontspec 从六部分字体中选择正确的部分?

答案1

fontspec软件包允许您明确指定应使用的斜体、粗体和粗体斜体字体。这很有用,原因显而易见,包括当需要覆盖fontspec偶尔做出的不正确的字体相关猜测时。顺便说一句,在 LuaLaTeX 和 XeLaTeX 下都可能发生不正确的字体猜测。

在此处输入图片描述

% !TEX TS-program = xelatex
\documentclass{article}
\usepackage{fontspec}
\setmainfont[ItalicFont     = Charter Italic,
             BoldFont       = Charter Bold,
             BoldItalicFont = Charter Bold Italic,
             Ligatures = TeX] 
            {Charter}
\begin{document}
Here are some \textit{italics} that aren't \textbf{bold}.
\end{document}

答案2

这取决于您使用的 Charter 字体。我有 CharterITC,它工作得很好:

在此处输入图片描述

相关内容