当前的拉丁字体不包含“西里尔文”脚本

当前的拉丁字体不包含“西里尔文”脚本

我正在尝试编译一份俄语文档并使用 cm-unicode 的字体。代码:

\documentclass[a4paper,12pt]{report}

\usepackage{polyglossia}
  \setdefaultlanguage[spelling=modern]{russian}
  \setotherlanguage{english}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage{xecyr}

\defaultfontfeatures{Mapping=tex-text}
\setmainfont{CMU Serif}
\setsansfont{CMU Sans Serif}
\setmonofont{CMU Typewriter Text}

构建命令:

latexmk -xelatex -outdir=build document.tex

错误信息:

! Package polyglossia Error: The current latin font CMUTypewriterText(0) does n
ot contain the "Cyrillic" script!

使用任何字体都会出现错误。

我究竟做错了什么?

答案1

解决了

\setmainfont{CMU Serif}
\newfontfamily{\cyrillicfont}{CMU Serif}
\setsansfont{CMU Sans Serif}
\newfontfamily{\cyrillicfontsf}{CMU Sans Serif}
\setmonofont{CMU Typewriter Text}
\newfontfamily{\cyrillicfonttt}{CMU Typewriter Text}

相关内容