为什么我的输出部分是 BiDi?

为什么我的输出部分是 BiDi?

我正在使用 xelatex(在 Debian 稳定版上)。

我的 TeX 文件如下所示:

\documentclass{book}
\usepackage{polyglossia}

\setmainlanguage{english}
\setotherlanguage{hebrew}

\setmainfont{Latin Modern Roman}
\newfontfamily\hebrewfont[Script=Hebrew]{Miriam CLM}
\begin{document}
Lorem ipsum dolor sit amet, \begin{hebrew} לורם איפסום דולור סיט אמט \end{hebrew}
\end{document}

我的输出如下:

Lorem ipsum dolor sit amet,אמט סיט דולור אפסום לורם

因此,它是 BiDi,因为字母的顺序正确,但由于某种原因,单词是从左到右阅读的。

我应该怎样修复此问题?

答案1

对于内联希伯来语,您应该使用\texthebrew。该hebrew环境适用于段落文本。

%!TEX program = xelatex
\documentclass{book}
\usepackage{polyglossia}
\usepackage{bidi}
\setmainlanguage{english}
\setotherlanguage{hebrew}
\setmainfont{Latin Modern Roman}
\newfontfamily\hebrewfont[Script=Hebrew]{Noto Sans Hebrew}
\begin{document}
Lorem ipsum dolor sit amet, \texthebrew{לורם איפסום דולור סיט אמט}

\begin{hebrew}
  לורם איפסום דולור סיט אמט
\end{hebrew}
\end{document}

MWE 输出

答案2

使用bidi纠正\RLE文本方向:

%!TEX program = xelatex
\documentclass{book}
\usepackage{polyglossia}
\usepackage{bidi}
\setmainlanguage{english}
\setotherlanguage{hebrew}
\setmainfont{Latin Modern Roman}
\newfontfamily\hebrewfont[Script=Hebrew]{Noto Sans Hebrew}
\begin{document}
Lorem ipsum dolor sit amet, \begin{hebrew}\RLE{לורם איפסום דולור סיט אמט}\end{hebrew} 
\end{document}

相关内容