Das Label aus dem \subfigimg-Makro ist in xepersian versteckt

Das Label aus dem \subfigimg-Makro ist in xepersian versteckt

Bei Verwendung des Makros „\subfigimg“ in einer xepersischen Umgebung fehlen die Beschriftungen über jedem Bild:

\documentclass[preview]{standalone}
\usepackage{mwe}
\usepackage[table]{xcolor}
\usepackage{xepersian}
\settextfont{XB Zar}
\newcommand{\subfigimg}[3][,]{%
  \setbox1=\hbox{\includegraphics[#1]{#3}}% Store image in box
  \leavevmode\rlap{\usebox1}% Print image
  \rlap{\raisebox{\dimexpr\ht1-1\baselineskip}{\textbf{\color{red}#2}}}% Print label
  \phantom{\usebox1}% Insert appropriate spcing
}
\begin{document}

\begin{figure}[htp]
    \centering
    \begin{tabular}{@{}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{}}
        \subfigimg[width=\linewidth]{الف}{example-image-a} &
        \subfigimg[width=\linewidth]{ب}{example-image-b} &
        \subfigimg[width=\linewidth]{پ}{example-image-c} \\
    \end{tabular}
\end{figure}

\end{document}

Antwort1

Sie sind darunter.

Aus Symmetriegründen sollten es vielleicht sechs Kombinationen (in der richtigen Reihenfolge) sein, die zum gewünschten Ergebnis aus rechter und linker Überlappung sowie Bild und Text führen.

Diese Version platziert zuerst die Beschriftungen und überlappt sie dann mit den Bildern, wobei auf beiden Seiten die gleichen Ränder vorhanden sind. Die Beschriftungen befinden sich auf der linken Seite des Bildes:

Text oben

MWE

\documentclass{article}%[preview]{standalone}
\usepackage{mwe}
\usepackage[table]{xcolor}
\usepackage{xepersian}
\settextfont{XB Niloofar}%Zar}
\newcommand{\subfigimg}[3][,]{%
  \setbox1=\hbox{\includegraphics[#1]{#3}}% Store image in box
\leavevmode%{\usebox1}% Print image
{\phantom{\usebox1}}% Insert appropriate spcing
\llap{\raisebox{\dimexpr\ht1-1\baselineskip}{\textbf{\color{red}#2}}}% Print label
\llap{\usebox1}
%    \phantom{\usebox1}% Insert appropriate spcing
}
\begin{document}
\large
\begin{figure}[htp]
    \centering
    \begin{tabular}{@{}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{}}
        \subfigimg[width=\linewidth]{الف}{example-image-a} &
        \subfigimg[width=\linewidth]{ب}{example-image-b} &
        \subfigimg[width=\linewidth]{پ}{example-image-c} \\
    \end{tabular}
\end{figure}

\end{document}

Bearbeitet, um hinzuzufügen

Der Schlüssel liegt darin, dass mit xepersian, das {A}\llap{B}heißt Aüber , gesetzt wird B. \rlapDies entspricht der normalen Textflussrichtung.

Ich brauche etwas Ähnliches, mit der Option, den Text entweder in der oberen linken (TL), oberen rechten (TR), unteren linken (BL) oder unteren rechten (BR) Ecke des Bildes anzuzeigen, und zwar mit ifAnweisungen. Außerdem habe ich bei Text auf Bildern hinzugefügt bidicontour, was den Text leichter lesbar macht.

Hier ist die Position oben rechts:

Text auf Bildern RTL

Nahaufnahme:

Nahaufnahme

MWE

\documentclass{article}
\usepackage{graphicx}
\usepackage[outline]{bidicontour}%before xepersian


\usepackage[table]{xcolor}
\usepackage{xepersian}
\settextfont{XB Niloofar}

\newcommand\imagea{}
\newcommand\texta{}

\newif\ifcaptionBR
\newif\ifcaptionTR
\newif\ifcaptionBL
\newif\ifcaptionTL

\newcommand\capinit{%
\captionBRfalse
\captionTRfalse
\captionBLfalse
\captionTLfalse
}
\newcommand\capimage[2]{%1=image,2=text,(3=location: global)
\ifcaptionBR%
{#2}\kern-\wd2{#1}
\fi%
\ifcaptionTR%
{\raisebox{\dimexpr\ht1-\baselineskip}{#2}}\kern-\wd2{#1}
\fi%
\ifcaptionBL%
{\phantom{#1}}\llap{#2}\llap{#1}
\fi%
\ifcaptionTL%
{\phantom{#1}}\llap{\raisebox{\dimexpr\ht1-\baselineskip}{#2}}\llap{#1}
\fi%
}

\newcommand\subimg[4]{% 1=width,2=image,3=text, 4=text location command
\renewcommand\imagea{\includegraphics[width=#1]{#2}}
\renewcommand\texta{{\textcolor{red}{\textbf{\bidicontour{yellow}{#3}}}}}
\setbox1=\hbox{\imagea}
\setbox2=\hbox{\texta}
\capinit
#4
\capimage{\imagea}{\texta}
}

\bidicontourlength{0.8pt}

\begin{document}

%
%\subimg{0.30\linewidth}{example-image-a}{الف}{\captionTLtrue}
%
%
%\subimg{0.30\linewidth}{example-image-a}{الف}{\captionBLtrue}
%
%
%\subimg{0.30\linewidth}{example-image-a}{الف}{\captionTRtrue}
%
%
%
%
%\subimg{0.30\linewidth}{example-image-a}{الف}{\captionBRtrue}


\begin{figure}[htp]
    \centering
    \begin{tabular}{@{}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{\hspace{1mm}}p{0.33\linewidth}@{}}
        \subimg{0.98\linewidth}{example-image-a}{الف}{\captionTRtrue} &
        \subimg{0.98\linewidth}{example-image-b}{ب}{\captionTRtrue} &
        \subimg{0.98\linewidth}{example-image-c}{پ}{\captionTRtrue} \\
    \end{tabular}
\end{figure}



\end{document}

Es handelt sich um eine Übung zu Symmetriegruppen und der „Händigkeit“ von (zweiachsigen) Spiegelungen. Sehr interessant.

verwandte Informationen