左侧为 LTR 文本示例文件,右侧为 RTL 文本示例文件

左侧为 LTR 文本示例文件,右侧为 RTL 文本示例文件

我正在寻找混合 LTR 和 RTL 文本的示例文件,其中每个文本占据页面每行的各自一侧。

此外,我希望能够按不同的长度缩进奇数/偶数行。

RTL 语言的例子有阿拉伯语、希伯来语和波斯语。每种语言的示例文件可能对其他语言有用,但需要进行少量修改。输出内容如下:

English line 1 aaaaaaaaa                                                RTL line 1
   English line 2 bbbbbbbbbb                                         RTL line 2
English line 3 cccccccccc                                               RTL line 3

答案1

xelatex将包polyglossia与包一起使用multicols。这是一个例子。由于我不懂波斯语,所以我只用谷歌翻译来翻译一些东西。我敢肯定翻译得不是很好。

% !TEX TS-program = XeLaTeX

\documentclass[12pt]{article}
\usepackage{multicol}
\usepackage{polyglossia}
\usepackage{fontspec}
\setmainlanguage{english}
\setotherlanguage{farsi}
\newfontfamily\farsifont[Script=Arabic]{Scheherazade}

\begin{document}
\begin{multicols}{2}
This is some text that is in English and since I know English I didn't have to use Google Translate to translate it.
\columnbreak

\begin{farsi}
برخی از متن که به زبان فارسی است، اما من فارسی صحبت نمی کنم، بنابراین من برخی از انگلیسی به فارسی با استفاده از گوگل ترجمه، ترجمه شده است. من کاملا مطمئنم که ترجمه واقعا افتضاح است.
\end{farsi}
\end{multicols}
\end{document}

代码输出

答案2

您可以使用以下方法执行此操作\parbox

\documentclass[12pt]{article}
\newcommand\mytext[2]{\parbox[t]{\dimexpr(0.5\linewidth-0.5\columnsep)}{#1}\hskip\columnsep\parbox[t]{\dimexpr(0.5\linewidth-0.5\columnsep)}{\begin{latin}#2\end{latin}}}
\usepackage{xepersian}
\thispagestyle{empty}
\begin{document}
\mytext{%
این یک متن فارسی است که در سمت راست قرار می‌گیرد%
}{This is some English text that is on the left hand side.}\\
\mytext{%
این یک متن فارسی است که در سمت راست قرار می‌گیرد%
}{This is some English text that is on the left hand side.}
\vskip10pt
\mytext{%
این یک متن فارسی است که در سمت راست قرار می‌گیرد%
}{This is some English text that is on the left hand side.}
\vskip50pt
\mytext{%
این یک متن فارسی است که در سمت راست قرار می‌گیرد%
}{This is some English text that is on the left hand side.}
\end{document}

相关内容