Zähler in Tcolorbox um zehn erhöhen … und gut verweisen?

Zähler in Tcolorbox um zehn erhöhen … und gut verweisen?

Ich schreibe ein Buch über Wahrscheinlichkeitsrechnung auf Arabisch, wobei ich Polyglossie verwende, und ich möchte den Zähler einiger meiner Kästchen um zehn mal zehn erhöhen (der Grund hierfür ist, dass die arabischen Buchstaben mit Abjad nummeriert sind, wobei für den ersten neunten Buchstaben die Einheit verwendet wird, danach Zehner für den nächsten neunten Buchstaben, Hunderter für den nächsten neunten Buchstaben und Tausender für den 28. und letzten Buchstaben... Sie können diese Wikipedia auf Französisch sehen, ich habe keine andere Quelle...http://fr.wikipedia.org/wiki/Num%C3%A9ration_arabe).. Eine Lösung, die ich gefunden habe, besteht darin, den Zähler mit dem Befehl in jeder Iteration um 9 zu erhöhen phantom={\addtocounter{\tcbcounter}{9}}, aber die Beschriftung dieser Box bezieht sich auf den Zähler vor diesem Befehl ... Ich habe in der Dokumentation des tcolorbox-Pakets gesehen, dass dies natürlich ist.. Wie kann ich also die Beschriftungen meiner Beispiele auf die Beschriftungen nach dem Hinzufügen von 9 zu meinem Element beziehen ... oder eine andere Idee. Danke. Hier ist ein Beispiel aus meiner Datei..

\documentclass[14pt,a4paper]{extbook}

\usepackage{titlesec}


\usepackage{amsmath,amssymb}
\usepackage[most]{tcolorbox}


\usepackage{boxedminipage}
\usepackage{slashbox}

\usepackage{titlesec}


\usepackage{enumitem}

\usepackage{minitoc}

\usepackage{rotating}

\usepackage{fmultico}
\setlength{\columnseprule}{0.1pt}

\usepackage{fancyhdr}
\pagestyle{fancy}

\usepackage{pdflscape}

\usepackage{array}


\usepackage{polyglossia}
\setmainlanguage[numerals=maghrib]{arabic}
\setotherlanguage{english}

\newfontfamily\arabicfont[Script=Arabic, AutoFakeSlant=-0.02]{Amiri}
\setsansfont[Script=Arabic,Scale=1.5]{Amiri}


\tikzstyle{boxwhite} =
    [draw=white, thick, scale=.7, fill=white,
        line width=0.1pt, text=black, rectangle,
        font=\Large,
        left, minimum height=.5cm]

\newcounter{example}

\newtcolorbox[auto counter, 
number within=section,
number freestyle={\noexpand\arabic{section}\noexpand\alph{\tcbcounter}}]{example}[2][]{
enhanced,
colback=white,
colframe=white,
top=-.7cm,
bottom=-2mm,
enlarge top by=\baselineskip/2+1mm,
enlarge top at break by=0mm,pad at break=2mm,
fontupper=\normalsize,
label={#2},
overlay unbroken and first={
\node[boxwhite]
at ([xshift=1.4cm,yshift=-.15cm]frame.north east)
{\strut\RL{\setlength{\extrarowheight}{-30.5pt}\textbf{$\begin{array}{c}
\hline
\rule{0pt}{2ex}
\mbox{\RL{مثال}}
\\
\mbox{\large\thetcbcounter}
\rule{0pt}{1.5ex}
\end{array}$}}};},
breakable,
width=1.048\textwidth,       
arc=0pt,outer arc=0pt,
enlarge left by=-.085\textwidth,
extrude right by=-5pt,
extrude left by=-5pt,
#1}%

\newtcolorbox[use counter from=example]{example9}[2][]{
enhanced,
phantom={\addtocounter{\tcbcounter}{9}},
colback=white,
colframe=white,
top=-.7cm,
bottom=-2mm,
enlarge top by=\baselineskip/2+1mm,
enlarge top at break by=0mm,pad at break=2mm,
fontupper=\normalsize,
label={#2},
overlay unbroken and first={%
\node[boxwhite]
at ([xshift=1.4cm,yshift=-.15cm]frame.north east)
{\strut\RL{\setlength{\extrarowheight}{-30.5pt}\textbf{$\begin{array}{c}
\hline
\rule{0pt}{2ex}
\mbox{\RL{مثال}}
\\
\mbox{\large\thetcbcounter}
\rule{0pt}{1.5ex}
\end{array}$}}};},
breakable,
width=1.048\textwidth,      
arc=0pt,outer arc=0pt,
enlarge left by=-.085\textwidth,
extrude right by=-5pt,
extrude left by=-5pt,
#1}%
\begin{document}

\begin{example}{ex0:a}
First 
\end{example}
\begin{example}{ex0:b}
Second 
\end{example}
\begin{example}{ex0:c}
....
\end{example}
\begin{example}{ex0:d}
....
\end{example}
\begin{example}{ex0:e}
....
\end{example}
\begin{example}{ex0:f}
....
\end{example}
\begin{example}{ex0:g}
....
\end{example}
\begin{example}{ex0:h}
....
\end{example}
\begin{example}{ex0:i}
....
\end{example}
\begin{example}{ex0:j}
....
\end{example}
\begin{example9}{ex0:k}
\LR{A good numeroted}
\end{example9}
\begin{example}{ex0:l}
\LR{A bad numeroted}
\end{example}
\LR{but the reference \ref{ex0:k} of the ten-th exercise is bad...}

 \end{document}

Antwort1

Wenn Sie auf einen Zähler verweisen möchten, müssen Sie ihn um erhöhen \refstepcounter. Dadurch ändert sich der interne Befehl, der vom Label verwendet wird.

Erhöhen Sie also den Zähler um

\addtocounter{\tcbcounter}{8}\refstepcounter{tcbcounter}}

damit der letzte Schritt das Richtige bewirkt.

verwandte Informationen