尝试从西里尔文输入中获取西里尔文输出,我得到的都是?

尝试从西里尔文输入中获取西里尔文输出,我得到的都是?

有人能帮助我吗?我在这里和 Google 上搜索过,但人们声称对他们有用的所有代码对我来说都不起作用。例如,如果我在以下位置使用 XeLaTeX:

\documentclass{book}
\usepackage[paperwidth=5in,paperheight=8in,
 top=0.75in,  bottom=0.75in,
 inner=0.75in,outer=0.75in ]{geometry}
\usepackage{setspace}

\usepackage{libertine}
\usepackage[russian]{babel} 

\begin{document}

\begin{titlepage}
\vspace*{\stretch{2}}
\begin{center}
\huge
 Либертарианские уроки \\
\textit{Южного Парка}

\vspace{\stretch{1}}
\Large
Libertarian Philosophy in \\
\textit{South Park}

\vspace{\stretch{4}}
\normalsize
Брандон Симпсон
\end{center}
\end{titlepage}

\end{document}

我可以正常获得英文输出,但西里尔字符全部呈现为??????

我以为问题可能出在 TeXShop,但如果我用 Preview 或 Acrobat 打开 .pdf,就全是???s......

有什么建议吗?我使用 LaTeX 很长时间了,但从未用过西里尔文书写,而且对字体/编码等也不太了解。

谢谢

答案1

要使用 XeLaTeX 运行上述代码,最好将以下行替换为

\usepackage[russian]{babel}

\usepackage{polyglossia}
\setmainlanguage{russian}

另外添加

\usepackage{fontspec}

以获得正确的字体编码并确保您的文档是 UTF-8 编码的。

然后是以下 MWE

\documentclass{book}
\usepackage[paperwidth=5in,paperheight=8in,
 top=0.75in,  bottom=0.75in,
 inner=0.75in,outer=0.75in ]{geometry}
\usepackage{setspace}

\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{russian}
\usepackage{libertine}

\begin{document}

\begin{titlepage}
\vspace*{\stretch{2}}
\begin{center}
\huge
 Либертарианские уроки \\
\textit{Южного Парка}

\vspace{\stretch{1}}
\Large
Libertarian Philosophy in \\
\textit{South Park}

\vspace{\stretch{4}}
\normalsize
Брандон Симпсон
\end{center}
\end{titlepage}

\end{document}

生产

在此处输入图片描述

相关内容