为什么 LuaLaTeX 不拾取小型大写字母字形?

为什么 LuaLaTeX 不拾取小型大写字母字形?

我有一个字体,其字体表如图所示。但是,当我使用 LuaLaTeX 编译基本文档时,尽管指定了小写字母,但文本仍显示为小写。

通过查看字体表,我了解到小型大写字母的字形可能位于错误的位置(在字体表中)和/或具有错误的标签(例如,下图中小型大写字母“a”显示为拉丁大写字母 A)。我不太了解字体表,任何见解都将不胜感激。

请告知我是否需要将小型大写字母字形移动到表中的另一个位置,以便 LuaLaTeX 能够正确拾取它。

如果我的理解有误,请问您能建议其他解决方案吗?

字体表

\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures={Required,Common,Contextual,TeX},Numbers=Lining, ItalicFont={Alcala-Italic},BoldFont={Alcala-Bold}]{Alcala-Regular}

\begin{document}    
\textsc{test}
\end{document}

输出

答案1

我发现字体表被映射为将拉丁大写字母替换为小型大写字母,如下图所示(而不是像通常那样将拉丁小写字母替换为小型大写字母。)

大写字母至 SC

现在,对大写字母使用 \textsc 命令,可以产生正确的输出。

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Alcala-Regular}

\begin{document}    
\textsc{\uppercase{test for small caps}}\enspace TEST FOR ALL CAPS
\end{document}

斯菲尼

相关内容