如何使用 scrbook 增加阿拉伯语脚注行的长度?

如何使用 scrbook 增加阿拉伯语脚注行的长度?

如果我用英语书写,下面的代码可以工作,但是当我用阿拉伯语书写时,它就不行!我想将脚注行的长度延长到整个文本宽度。

平均能量损失

\documentclass[twoside=semi]{scrbook}
\setfootnoterule[1pt]{\textwidth} % default height is 0.4pt
\usepackage{polyglossia}
\setmainlanguage[numerals=mashriq,abjadjimnotail=true]{arabic} 
\newfontfamily\arabicfont[Script=Arabic,Ligatures=TeX]{Simplified Arabic} 

\begin{document}

هذه الحكاية حدثت في اوكرانيا\footnote{هي ثاني أكبر دول أوروبا الشرقية. يحدها الاتحاد الروسي من الشرق، بيلاروسيا من الشمال، بولندا وسلوفاكيا والمجر من الغرب، رومانيا ومولدوفا إلى الجنوب الغربي، والبحر الأسود وبحر آزوف إلى الجنوب}. 

\end{document}

输出
在此处输入图片描述

答案1

\documentclass[twoside=semi]{scrbook}
\usepackage{polyglossia}
\setmainlanguage[numerals=mashriq,abjadjimnotail=true]{arabic} 
\newfontfamily\arabicfont[Script=Arabic,Ligatures=TeX]{Simplified Arabic} 
\makeatletter
\renewcommand*\footnoterule{%
  \normalsize\ftn@rule@test@values
  \kern-\dimexpr 2.6\p@+\ftn@rule@height\relax
  \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi
  {\usekomafont{footnoterule}{%
      \hrule \@height1pt \@width\textwidth}}%
  \kern 2.6\p@}
\makeatother
\begin{document}

هذه الحكاية حدثت في اوكرانيا\footnote{هي ثاني أكبر دول أوروبا الشرقية. يحدها  الاتحاد الروسي من الشرق، بيلاروسيا من الشمال، بولندا وسلوفاكيا والمجر من الغرب، رومانيا ومولدوفا إلى الجنوب الغربي، والبحر الأسود وبحر آزوف إلى الجنوب}. 

\end{document}

答案2

我刚刚意识到有一个名为包\textwidthfootnoterule的宏bidi,可以轻松使用它来获得所需的效果,前提是宽度footnoterule设置为默认值0.4pt,我现在更喜欢这个。另一个答案是根据需要调整宽度和长度。bidi包将自动加载polyglossia

\documentclass[twoside=semi]{scrbook}
\usepackage{polyglossia}
\setmainlanguage[numerals=mashriq,abjadjimnotail=true]{arabic}
\newfontfamily\arabicfont[Script=Arabic,Ligatures=TeX]{Simplified Arabic}
\textwidthfootnoterule % of bidi package
\begin{document}

هذه الحكاية حدثت في اوكرانيا\footnote{هي ثاني أكبر دول أوروبا الشرقية. يحدها الاتحاد الروسي من الشرق، بيلاروسيا من الشمال، بولندا وسلوفاكيا والمجر من الغرب، رومانيا ومولدوفا إلى الجنوب الغربي، والبحر الأسود وبحر آزوف إلى الجنوب}.


\end{document}

输出
在此处输入图片描述

答案3

也许你只是想让规则出现在右边!如果是这样,你应该使用命令\rightfootnoterule

[![\documentclass\[twoside=semi\]{scrbook}
\usepackage{polyglossia}
\setmainlanguage\[numerals=mashriq,abjadjimnotail=true\]{arabic}
\newfontfamily\arabicfont\[Script=Arabic,Ligatures=TeX\]{Simplified Arabic}
\rightfootnoterule % Force footnote spearator rule to appear at right 
\begin{document}

هذه الحكاية حدثت في اوكرانيا\footnote{هي ثاني أكبر دول أوروبا الشرقية. يحدها الاتحاد الروسي من الشرق، بيلاروسيا من الشمال، بولندا وسلوفاكيا والمجر من الغرب، رومانيا ومولدوفا إلى الجنوب الغربي، والبحر الأسود وبحر آزوف إلى الجنوب}.


\end{document}][1]][1]

在此处输入图片描述

相关内容