为对话包设置 SC 字体?

为对话包设置 SC 字体?

有没有办法设置用于 Dialogue 包的小型大写字体?如果我使用 tgtermes 字体,一切都会正常;不幸的是,我正在使用另一种语言,所以我需要一种 Open Type 字体,虽然我有一种我想使用的小型大写字体 (Alegreya SC),但即使我将主字体设置为 Alegreya,我在 Dialogue 包下也无法获得小型大写字体。

梅威瑟:

\documentclass{book}
\usepackage{dialogue}
\usepackage[spanish]{babel}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\setromanfont[Mapping=tex-text]{Alegreya}

%\setmainfont{Alegreya}[SmallCapsFont={Alegreya SC}
\linespread{1.2}
\begin{document}
\begin{dialogue}

\speak{Menón} Sí, Sócrates.
\speak{Sócrates} Ya te dije. 

\end{dialogue}

答案1

这有效:

\documentclass{book}

\usepackage[spanish]{babel}
\usepackage{fontspec}
\usepackage{dialogue}

\setmainfont{Alegreya}[
  SmallCapsFont={Alegreya SC},
]

\begin{document}

\begin{dialogue}

\speak{Menón} Sí, Sócrates.
\speak{Sócrates} Ya te dije.

\end{dialogue}

\end{document}

如果你有旧版本的fontspec,语法\setmainfont将是

\setmainfont[
  Ligatures=TeX,
  SmallCapsFont={Alegreya SC},
]{Alegreya}

不要加载xunicodexltxtra

在此处输入图片描述

相关内容