TexLive 2019 和 Hoefler Text 功能

TexLive 2019 和 Hoefler Text 功能

我刚刚更新了我的系统以使用 TexLive 2019,自更新以来,一些以前可以使用的功能Hoefler Text似乎不再起作用了。

我在替代字形方面遇到了问题,这可能是由于我的编码不佳造成的,但我最大的问题是小写字母。我现在收到以下错误,并且在编译后的 PDF 中它会恢复为标准大小写。我尝试过的其他字体似乎不是这种情况。我应该注意,我是在 中这样做的XeLaTex

LaTeX Font Warning: Font shape TU/HoeflerText(1)/m/sc undefined (Font)              
using TU/HoeflerText(1)/m/n instead on input line 6."

在更新之前,它一直运行正常,现在为什么会失败?有什么原因吗?有简单的解决方法吗?

答案1

我对最新的 TL2019 没有任何问题,

\documentclass{article}
\usepackage{fontspec}
\setmainfont{HoeflerText-Roman.otf}[
  BoldFont = HoeflerText-Bold.otf,
  BoldFeatures = {SmallCapsFont = HoeflerText-BoldSC.otf},
  ItalicFont = HoeflerText-RegularItalic.otf,
  ItalicFeatures = {SmallCapsFont = HoeflerText-RegularItalicSC.otf},
  BoldItalicFont = HoeflerText-BoldItalic.otf,
  BoldItalicFeatures = {SmallCapsFont = HoeflerText-BoldItalicSC.otf},
  SmallCapsFont = HoeflerText-RomanSC.otf,
]
\begin{document}

foo \textsc{Weather}
\bfseries
foo \textsc{Weather}
\itshape
foo \textsc{Weather}
\mdseries
foo \textsc{Weather}

\end{document}

在此处输入图片描述

答案2

我在 Mactex 2020.04.07(使用 TeX Live 2020)中也遇到了同样的问题。我的错误消息是:

LaTeX Font Warning: Font shape `TU/HoeflerText(0)/m/sc' undefined

我不知道为什么你的字体是这样的HoeflerText(1)而我的是这样的HoeflerText(0)

为了使小型大写字母发挥作用,我添加了:

\DeclareFontShape{TU}{HoeflerText(0)}{m}{sc}%
       {<-> "Hoefler\space Text:Letter\space Case=Small\space Caps"}{}

回到序言。

如果您想要粗体、斜体和粗斜体的小写字母,您还应该添加:

% Bold small caps
\DeclareFontShape{TU}{HoeflerText(0)}{b}{sc}%
       {<-> "Hoefler\space Text\space Black:Letter\space Case=Small\space Caps"}{}
% Italic small caps
\DeclareFontShape{TU}{HoeflerText(0)}{m}{scit}%
       {<-> "Hoefler\space Text\space Italic:Letter\space Case=Small\space Caps"}{}
% Bold italic small caps
\DeclareFontShape{TU}{HoeflerText(0)}{b}{scit}%
       {<-> "Hoefler\space Text\space Black\space Italic:Letter\space Case=Small\space Caps"}{}

相关内容