如何使西里尔字母与 TeX Gyre 字体兼容?

如何使西里尔字母与 TeX Gyre 字体兼容?

我想使用 XeLaTeX 和 TeX Gyre 字体(例如 TEX Gyre Termes)编写俄语文档。根据此处的文档http://mirrors.ctan.org/fonts/tex-gyre/doc/qtm-info.pdf(第 3-4 页)它支持西里尔字母,但我无法让它工作。我尝试过:

\documentclass{article}
\usepackage[main=russian, english]{babel}
\usepackage{fontspec}
\setmainfont{TeX Gyre Termes}

\begin{document}
    Hello world!
    А это по-русски.
\end{document}

\documentclass{article}
\usepackage{polyglossia}
\setdefaultlanguage{russian}
\usepackage{fontspec}
\setmainfont{TeX Gyre Termes}

\begin{document}
    Hello world!
    А это по-русски.
\end{document}

(如果我理解正确的话,最好使用babel而不是polyglossia

但什么都没起作用。这是我在输出 PDF 中得到的内容:

缺少西里尔字母

我做错了什么?

答案1

尽管声称cyrl支持语言标签和西里尔字母块 0x0400–0x04FF,但在字形列表中却存在从 0x03F5 到 0x0E3F 的跳转。

我不确定开发人员是否开始考虑添加西里尔字母,但实际上他们并没有。

您可以使用主 TeX 发行版附带的 Tempora。

\documentclass{article}
\usepackage[main=russian, english]{babel}
\usepackage{fontspec}

\setmainfont{Tempora}[
  Extension=.otf,
  UprightFont=*-Regular,
  ItalicFont=*-Italic,
  BoldFont=*-Bold,
  BoldItalicFont=*-BoldItalic,
]

\begin{document}

Hello world!

А это по-русски.

\end{document}

在此处输入图片描述

或者,使用 Stix Two,但字形与“标准” Times 略有不同。

\documentclass{article}
\usepackage[main=russian, english]{babel}
\usepackage{fontspec}

\setmainfont{STIXTwoText}[
  Extension=.otf,
  UprightFont=*-Regular,
  ItalicFont=*-Italic,
  BoldFont=*-Bold,
  BoldItalicFont=*-BoldItalic,
]

\begin{document}

Hello world!

А это по-русски.

\end{document}

在此处输入图片描述

答案2

您需要一种带有西里尔字母的字体,例如 Times New Roman Windows 字体

在此处输入图片描述

\documentclass{article}
\usepackage[main=russian, english]{babel}
\usepackage{fontspec}
\setmainfont{Times New Roman}

\begin{document}
    Hello world!
    А это по-русски.
\end{document}

相关内容