OpenType Kerkis 和粗体小型大写字母以及希腊字母

OpenType Kerkis 和粗体小型大写字母以及希腊字母

克尔基斯font 是一种 OpenType 字体,其中有希腊字形 Small Caps,既有常规形状也有粗体形状。OTF 文件的名称为KerkisSmallCaps.otfKerkisSmallCaps-Bold.otf

当我编译以下示例时,将textbf被忽略。这并不奇怪,因为只声明了常规字体。

如果我替换KerkisSmallCapsKerkisSmallCaps-Bold,那么(显然)两条线都会使用粗体形状。

\documentclass{article}

\usepackage{fontspec}

\setmainfont[
    UprightFont = Kerkis,
    ItalicFont = KerkisItalics,
    SlantedFont = KerkisItalics,
    BoldFont = Kerkisb,
    BoldItalicFont = Kerkisbi,
    BoldSlantedFont = Kerkisbi,
    SmallCapsFont = KerkisSmallCaps]
    {Kerkis}

\begin{document}
\textsc{κείμενο στα ελληνικά}

\textbf{\textsc{κείμενο στα ελληνικά}}
\end{document}

问题是,我怎样才能让 xelatex 将第一句排版为常规形状,将第二句排版为粗体?在 fontspec 中应该传递哪些选项?

答案1

我猜想粗体小写字母非常不常见,所以字体规范的作者没有考虑到这一点。作为一种解决方法,您可以单独为粗体小写字母定义一个新的字体命令。

\documentclass{article}
\usepackage{fontspec}
\setmainfont[
    UprightFont = Kerkis,
    ItalicFont = KerkisItalics,
    SlantedFont = KerkisItalics,
    BoldFont = Kerkisb,
    BoldItalicFont = Kerkisbi,
    BoldSlantedFont = Kerkisbi,
    SmallCapsFont = KerkisSmallCaps]
    {Kerkis}

\newfontface\bfsc{KerkisSmallCaps-Bold}

\begin{document}
\textsc{κείμενο στα ελληνικά}

{\bfsc κείμενο στα ελληνικά}
\end{document}

相关内容