我正在使用 XeLaTeX 排版一份阿拉伯语文档。我已经用它大约一年了。
我无法解决或尚未找到解决方案的问题是,当将两个图形并排放置时,图形在文档中的顺序正确(RTL),但在图形列表中它们是相反的。
我的最小工作示例:
\documentclass{report}
\usepackage{polyglossia}
\setmainlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic,Scale=1]{KacstOne}
\newcommand{\dblimg}
[7][ht]{{\begin{figure}[#1]
\begin{minipage}{0.48\textwidth}\centering
\includegraphics[width=#2\textwidth]{#3}
\caption[#4]{\centering #4}
\end{minipage}\hfill
\begin{minipage}{0.48\textwidth}\centering
\includegraphics[width=#5\textwidth]{#6}
\caption[#7]{\centering #7}
\end{minipage}
\end{figure}
}}
\begin{document}
\listoffigures
\dblimg{1}{a.jpg}{111}
{1}{a.jpg}{222}
\end{document}
获取\dblimg
两个图像的宽度、路径和标题。
如您所见,图 1(右侧)列在图 2 之前;这些图在文档中的顺序是正确的,但在图列表中却不是。
答案1
首先,caption
您可以使用包从 lof 中删除数字\caption[]{your caption}
,然后可以用手动输入替换它们
\addcontentsline{lof}{subsection}{\arabic{tempfig}\qquad your caption}
tempfig
在并排图像之前存储图形计数器值的计数器在哪里
\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{polyglossia}
\setmainlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic,Scale=1]{Amiri}
\newcounter{tempfig}
\newcommand{\dblimg}
[7][ht]{%
\setcounter{tempfig}{\value{figure}}
\stepcounter{tempfig}
\addcontentsline{lof}{subsection}{\arabic{tempfig}\qquad #4}
\stepcounter{tempfig}
\addcontentsline{lof}{subsection}{\arabic{tempfig}\qquad #7}
\begin{figure}[#1]
\begin{minipage}{0.48\textwidth}\centering
\includegraphics[width=#2\textwidth]{#3}
\caption[]{\centering #4}
\end{minipage}\hfill
\begin{minipage}{0.48\textwidth}\centering
\includegraphics[width=#5\textwidth]{#6}
\caption[]{\centering #7}
\end{minipage}
\end{figure}
}
\begin{document}
\listoffigures
\dblimg{1}{example-image}{111}
{1}{example-image}{222}
\end{document}