当 RTL 句子中的最后一个单词是英文单词时,句子末尾的点(也称为句号)位于错误的位置。
MWE如下:
\documentclass{article}
\usepackage{polyglossia,bidi}
\setmainlanguage{hebrew}
\setotherlanguage{english}
\setmainfont{David}
\usepackage{fontspec}
\begin{document}
\begin{itemize}
\item שלום hello שלום.
\item שלום hello.
\item שלום hello .
\end{itemize}
\end{document}
能以某种方式修复吗?
答案1
您必须明确将语言更改为英语:
\documentclass{article}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setotherlanguage{english}
\setmainfont{Linux Libertine O}
\begin{document}
\begin{itemize}
\item שלום \textenglish{hello} שלום.
\item שלום \textenglish{hello}.
\item שלום \textenglish{hello}.
\end{itemize}
\end{document}
或者,如果你够勇敢,你可以babel
使用lualatex
:
\documentclass{article}
\usepackage[nil,bidi=basic-r]{babel}
\babelprovide[import=he,main]{hebrew}
\babelprovide[import=en-AU]{australian}
\babelfont{rm}{Linux Libertine O}
\begin{document}
\begin{itemize}
\item שלום hello שלום.
\item שלום hello.
\item שלום hello.
\end{itemize}
\end{document}
输出相同: