如何使用 RTL 语言在 Beamer 中正确对齐目录?

如何使用 RTL 语言在 Beamer 中正确对齐目录?

我使用以下 MWE 得到了目录内项目符号的错误对齐:

\documentclass[12pt]{beamer}
\usepackage{polyglossia}
\setmainlanguage[numerals=mashriq,abjadjimnotail=true]{arabic} % Polyglossia package for more options
\setotherlanguages{english}
\setsansfont[Script=Arabic,Ligatures=TeX]{Simplified Arabic} % Bold sans used for sections
\newfontfamily\englishfont{Arial}

\usetheme{Frankfurt}

\title{مثال تجريبي للمشكلة}

\AtBeginSection[] % Do nothing for \section*
{   %
  \begin{frame}
    \frametitle[TOC]{المحتويات}
    \tableofcontents[currentsection,currentsubsection,subsubsectionstyle=hide/hide]
  \end{frame}
}

\begin{document}
\begin{frame}
  \titlepage%
\end{frame}

\section*{المحتويات}
\frame{\tableofcontents[subsubsectionstyle=hide/hide]} %this is the first slide of TOC

\section{مقدمة}

\section{الفصل الاول}

\section{الفصل الثاني - تفاصيل عن الموضوع}

\section {الفصل الثالث}

\end{document}

输出

在此处输入图片描述

所以我的问题是有什么方法可以正确对齐吗?

答案1

在对类似帖子进行了一些研究之后,我发现围绕\tableofcontents环境minipage对于正确对齐是必要的。

\documentclass[12pt]{beamer}
\usepackage{polyglossia}
\setmainlanguage[numerals=mashriq,abjadjimnotail=true]{arabic} % Polyglossia package for more options
\setotherlanguages{english}
\setsansfont[Script=Arabic,Ligatures=TeX]{Simplified Arabic} % Bold sans used for sections
\newfontfamily\englishfont{Arial}

\usetheme{Frankfurt}

\title{مثال تجريبي للمشكلة}

\AtBeginSection[] % Do nothing for \section*
{   %
  \
  \begin{minipage}{1.0\linewidth}
  \begin{frame}
    \frametitle[TOC]{المحتويات}
    \tableofcontents[currentsection,currentsubsection,subsubsectionstyle=hide/hide]
  \end{frame}    
  \end{minipage}
}

\begin{document}
\begin{frame}
  \titlepage%
\end{frame}

\section*{المحتويات}
\begin{minipage}{1.0\linewidth}
\frame{\tableofcontents[subsubsectionstyle=hide/hide]} %this is the first slide of TOC  
\end{minipage}

\section{مقدمة}

\section{الفصل الاول}

\section{الفصل الثاني - تفاصيل عن الموضوع}

\section {الفصل الثالث}

\end{document}

在此处输入图片描述

答案2

对我来说相当简单的事情是使用ragged2e和提供的环境FlushRight

\documentclass{beamer}
% polyglossia and all that
\usepackage{ragged2e}

\begin{document}

\begin{frame}{TOC}

\begin{FlushRight}
\tableofcontents
\end{FlushRight}

\end{frame}

\section{sec 1}

\section{sec 2}

% ...

\end{document}

相关内容