使用 pdfLaTeX、LuaLaTex 从右到左的脚本

使用 pdfLaTeX、LuaLaTex 从右到左的脚本

是否有任何合理的、通用的方法(即不仅是阿拉伯语,或者仅仅是波斯语)来编写 RTL LaTeX 文档(甚至是 bidi)并用 pdfTeX 或 LuaTex 进行编译?

在 ConTeXt 中,我们可以使用\righttoleft{my inline content}\startalignment[righttoleft] my paragraph content \stopalignment最后\setupalign[righttoleft]作为文档的基本方向。

当使用该bidi包时(据我所知,它仅适用于 XeLaTeX),它们分别是\RLsetRL\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}

相关内容