是否有任何合理的、通用的方法(即不仅是阿拉伯语,或者仅仅是波斯语)来编写 RTL LaTeX 文档(甚至是 bidi)并用 pdfTeX 或 LuaTex 进行编译?
在 ConTeXt 中,我们可以使用\righttoleft{my inline content}
,\startalignment[righttoleft] my paragraph content \stopalignment
最后\setupalign[righttoleft]
作为文档的基本方向。
当使用该bidi
包时(据我所知,它仅适用于 XeLaTeX),它们分别是\RL
、setRL
和\usepackage[RTLdocument]{bidi}
。
那么有没有办法呢?如果有的话,pdf/LuaLaTex 的三个等效命令是什么?我问这个问题的原因是我们正在讨论什么潘多克应生成 LaTeX 输出。
答案1
根据上面的评论,我设法定义了一些命令,这些命令应该作为那些抵制 XeTeX 的人的基本后备。
LuaTex:
\newcommand{\RL}[1]{\bgroup\luatextextdir TRT#1\egroup}
\newcommand{\LR}[1]{\bgroup\luatextextdir TLT#1\egroup}
\newenvironment{RTL}{\luatextextdir TRT\luatexpardir TRT\luatexbodydir TRT}{}
\newenvironment{LTR}{\luatextextdir TLT\luatexpardir TLT\luatexbodydir TLT}{}
pdfTex:
\TeXXeTstate=1
\newcommand{\RL}[1]{\beginR #1\endR}
\newcommand{\LR}[1]{\beginL #1\endL}
\newenvironment{RTL}{\beginR}{\endR}
\newenvironment{LTR}{\beginL}{\endL}
但是如何将基本方向设置为 rtl?(即,如果大多数/所有文本都是从右到左,则它应该从右边缘开始流动。)我真的需要将整个文档包装在一个巨大的文本中吗\begin{RTL}...\end{RTL}
?