列表渲染不正确

列表渲染不正确

在以下 LaTeX 标记的输出中,列表呈现不正确。它有什么问题?

\documentclass{article}

\usepackage{fontspec}
\newfontfamily\faFont[Script=Arabic]{Tahoma}   
\usepackage{bidi}
\newenvironment{Fa}{\begin{RTL}\faFont}{\end{RTL}}
\newcommand{\fa}[1]{\faFont\RL{#1}}

\begin{document}
\begin{enumerate}
\item
Test
\item
Test
\item
This is Persian word:\fa{آزمایش} OK?
\item
Test
\item
Test
\end{enumerate}
\end{document}

在此处输入图片描述

答案1

代码可以简化如下:

\documentclass[varwidth]{standalone}
\usepackage{fontspec}
\setmainfont{Tahoma}
\newcommand{\fa}[1]{{\setmainfont[Script=Arabic]{Tahoma}#1}}

\begin{document}
  \begin{enumerate}
    \item Test
    \item This is Persian word: \fa{آزمایش} OK?
    \item Test
  \end{enumerate}
\end{document}

结果:

在此处输入图片描述

答案2

你所做的就是选择faFont取消选择将更改放在定义中的组中以使其成为本地的:

\documentclass{article}

\usepackage{fontspec}
\newfontfamily\faFont[Script=Arabic]{Tahoma}   
\usepackage{bidi}
\newenvironment{Fa}{\begin{RTL}\faFont}{\end{RTL}}
\newcommand{\fa}[1]{{\faFont\RL{#1}}}

\begin{document}
\begin{enumerate}
\item
Test
\item
Test
\item
This is Persian word:\fa{آزمایش} OK?
\item
Test
\item
Test
\end{enumerate}
\end{document}

我会添加输出,但我不使用xetexLuaTeX;抱歉。两年增加了一些视角 :)

在此处输入图片描述

相关内容