使用 LuaLaTeX 中的 fontspec 全局定义斜体小型大写字母

使用 LuaLaTeX 中的 fontspec 全局定义斜体小型大写字母

我正在使用一种 OTF 字体,它有小写字母,但没有斜体或倾斜小写字母,而且我正在处理的大型文档中有很多地方需要斜体小写字母。我知道我可以用一个接一个地做这件事,\newcommand但我希望避免需要返回整个文档并找出所有编译不正确的情况,只需将假斜体小写字母定义为整个文档的形状。我尝试了以下方法,但没有产生效果:

\setmainfont{Sabon LT Std}[
     Numbers=OldStyle,
     Ligatures=Common,
     ItalicFeatures={
          SmallCapsFeatures = {FakeSlant=0.2}}]

有什么建议么?

编辑:Sabon LT Std 字体的罗马字母中有小写字母,但是斜体中没有,其他字体也没有。

\documentclass{minimal}
\usepackage{fontspec}
\setmainfont{Sabon LT Std}[
    UprightFont = *-roman,
    BoldFont = *-bold,
    ItalicFont = *-italic,
    BoldItalicFont = *-bolditalic,
    Numbers=OldStyle,
    Ligatures=Common]   
\begin{document}
\textsc{Small caps}
\textit{Italics}
\textit{\textsc{Italic small caps}}
\end{document}

答案1

我没有你的字体,但这个对我来说很好用

\documentclass{article}
\usepackage{fontspec}
\setmainfont[
    ItalicFeatures =
    {
     SmallCapsFont={Arial},
     SmallCapsFeatures={FakeSlant=-0.2,RawFeature={+smcp}}
    },
     BoldItalicFeatures={
     SmallCapsFont={Arial/B},
     SmallCapsFeatures={FakeSlant=-0.2,RawFeature={+smcp}}
    }
    ]{TeX Gyre Termes}
\begin{document}
normal
\textsc{Small caps}
\textit{Italics}
\textit{\textsc{Italic small caps}}

\textit{\textsc{Italic \bfseries small caps}}

\textbf{\textit{Some \textsc{Italic small caps}}}
\end{document}

在此处输入图片描述

相关内容