有没有办法将 \cref 与 xepersian 包一起使用

有没有办法将 \cref 与 xepersian 包一起使用

有没有办法让\Cref命令与 xepersian 包一起工作。例如,在下面的代码中,定理的名称没有显示出来\cref;只是显示了数字,就像这样\ref

\documentclass{book}
\usepackage{cleveref}      
\usepackage{xepersian}
\newtheorem{theorem}{قضیه}

\begin{document}
\begin{theorem}\label{ss}
مم
\end{theorem}
طبق
\cref{ss}.
\end{document}

答案1

您必须使用以下结构进行更改and

\newcommand{\crefpairconjunction}{\,و\,}

而且您还必须使用以下结构进行更改 to

\newcommand{\crefrangeconjunction}{\,تا\,}

并且您还必须使用以下结构来定义定理(theorems)和通知(notices):

\crefname{thmx}{‌قضیه‌ی}{‌قضیه‌ها‌ی}
\crefname{thmy}{‌توجه}{توجه‌های}

请参阅以下结构:

\documentclass{book}
\usepackage[pagebackref=false,colorlinks,linkcolor=blue,citecolor=magenta]{hyperref}   
\usepackage{cleveref} 
\usepackage[logo=on,fontsize={14,18},%
inlinemathdigits=persian,%
displaymathdigits=persian%
]{xepersian}
\settextfont[Scale=1.1]{XB Niloofar}
\settextdigitfont[Scale=1.1]{Yas}
\setmathdigitfont[Scale=1]{PGaramond}
\makeatletter
\newtheorem{thmx}{قضیه}
\renewcommand{\thethmx}{\thechapter \@SepMark\arabic{thmx}} 
\newtheorem{thmy}{توجه}\renewcommand{\thethmy}{\thechapter\@SepMark\arabic{thmy}}
\makeatother
\crefname{thmx}{‌قضیه‌ی}{‌قضیه‌ها‌ی}
\crefname{thmy}{‌توجه}{توجه‌های}
\newcommand{\crefrangeconjunction}{\,تا\,}
\newcommand{\crefpairconjunction}{\,و\,}
\begin{document}

\chapter{یک}
\section{اولی}
\begin{thmx}\label{ss}\normalfont
اگر داشته ‌باشیم
$a^2+b^2=c^2$
آنگاه
$\angle C=90^\circ$
\end{thmx}
\section{دومی}
\begin{thmx}\label{sd}
اگر داشته ‌باشیم
$a^2+b^2=c^2$
آنگاه
$\angle C=90^\circ$
\end{thmx}
\begin{thmx}\label{sy}
اگر داشته ‌باشیم
$a^2+b^2=c^2$
آنگاه
$\angle C=90^\circ$
\end{thmx}
\begin{thmy}\label{sr}
اگر داشته ‌باشیم
$\angle C=90^\circ$
آنگاه
$a^2+b^2=c^2$
\end{thmy}
\begin{thmy}\label{sk}
اگر داشته ‌باشیم
$\angle C=90^\circ$
آنگاه
$a^2+b^2=c^2$
\end{thmy}
طبق
\cref{ss}
داریم:\\
طبق
\cref{ss,sd}
داریم:\\
یا طبق 
\cref{ss,sd,sy}
داریم:\\
طبق
\cref{sr}
داریم:\\
یا طبق 
\cref{sr,sk}
داریم:\\
\end{document}

You will have this output:

在此处输入图片描述

祝你好运。

相关内容