我想使用 来获取多个项目的交叉引用cleveref
,但问题在于“and”;它应该是“و”。
\documentclass{article}
\usepackage[colorlinks,allcolors=blue]{hyperref} % optional
\usepackage{cleveref}
\newcommand\pcref[1]{(\cref{#1})}
\crefformat{table}{#2جدول~#1#3}
\crefformat{figure}{#2شكل~#1#3}
\crefname{figure}{الشكل}{الأشكال}
\Crefname{figure}{الشكل}{الأشكال}
\usepackage{xepersian}
\settextfont[Scale=2]{Arial}
\setlatintextfont[Scale=1.3]{Arial}
\defpersianfont\Sayeh[Scale=1.5]{Arial}
\begin{document}
\begin{table}[h!] \caption{foo}\label{tab:foo}\end{table}
\begin{figure}[h!] \caption{foo}\label{fig:foo}\end{figure}
\begin{figure}[h!] \caption{foo}\label{fig:foo1}\end{figure}
\pcref{tab:foo}, \pcref{fig:foo,fig:foo1}, \pcref{fig:foo,tab:foo}\\
\end{document}
答案1
您需要提供说明
\newcommand\crefpairconjunction{ و }
以实现您的格式化目标。请参阅第 14 页用户指南cleveref
有关该宏的更多信息,请参阅软件包\crefpairconjunction
。在那里,您将找到以下解释:
\crefpairconjunction
当列表中只有两个交叉引用时使用...
\documentclass{article}
\usepackage[colorlinks,allcolors=blue]{hyperref} % optional
\usepackage{cleveref}
\newcommand\pcref[1]{(\cref{#1})}
\newcommand\crefpairconjunction{ و } % <-- new
\crefformat{table}{#2جدول~#1#3}
\crefformat{figure}{#2شكل~#1#3}
\crefname{figure}{الشكل}{الأشكال}
\Crefname{figure}{الشكل}{الأشكال}
\usepackage{xepersian}
\settextfont[Scale=2]{Arial}
\setlatintextfont[Scale=1.3]{Arial}
\defpersianfont\Sayeh[Scale=1.5]{Arial}
\begin{document}
\begin{table}[h!] \caption{tabbar} \label{tab:bar}\end{table}
\begin{figure}[h!] \caption{figfoo1}\label{fig:foo}\end{figure}
\begin{figure}[h!] \caption{figfoo2}\label{fig:foo1}\end{figure}
\pcref{tab:bar}, \pcref{fig:foo,fig:foo1}, \pcref{fig:foo,tab:bar}
\end{document}