
Digamos que eu tenha o seguinte código em um documento composto com memoir
:
\begin{figure}
\centering
\subbottom[]{
\label{sub1}
\includegraphics[width=0.4\linewidth]{test.png}}%
\subbottom[]{
\label{sub2}
\includegraphics[width=0.4\linewidth]{test.png}}%
\caption{\subcaptionref{sub1}: Left of the figure. \subcaptionref{sub2}: Right of the figure}
\end{figure}
que gera a seguinte figura:
Gostaria de poder sobrepor algum texto e fórmula matemática em cada uma das imagens (com coordenadas relativas a cada imagem).
Eu li esses dois posts:
- Desenhando em uma imagem com TikZ
- A maneira mais simples de sobrepor um rótulo de texto + retângulo em uma imagem?
Gosto muito da solução descrita no primeiro deles, ou seja, usar tikz
comandos para sobrepor textos e fórmulas.
No entanto, os exemplos que eles fornecem exigem o uso de um tikzpicture
ambiente, o que parece me impedir de usar \subbottom[]
subfiguras em memórias.
Como posso usar tikzpicture and
o escopo em combinação com subbottom
in memoir
?
Para fins de exemplo, digamos que eu queira sobrepor o símbolo $\phi$
no centro da subfigura à esquerda e o símbolo $\psi$
no centro da subfigura à direita (ambos dentro de pequenas caixas brancas).
Responder1
Como você pediu um jeito tikz, aqui está um. Claro que você pode arrumar bastante o código e criar comandos e tal, mas o exemplo abaixo mostra um caminho possível
\documentclass{memoir}
\usepackage{graphicx}
\newsubfloat{figure}
\usepackage{tikz}
\begin{document}
\begin{figure}
\centering
\subbottom[]{%
\label{sub1}
\begin{tikzpicture}[inner sep=0pt,remember picture]
\node at (0,0) {\includegraphics[width=0.4\linewidth]{test.jpg}};
\node[fill=green!20] (a) at (1,1) {A node};
\end{tikzpicture}
}%
\subbottom[]{
\label{sub2}
\begin{tikzpicture}[inner sep=0pt,remember picture]
\node at (0,0) {\includegraphics[width=0.4\linewidth]{test.jpg}};
\node[fill=red!20] (b) at (0.5,0.5) {A node};
\end{tikzpicture}
}%
\begin{tikzpicture}[remember picture,overlay]
\draw[->,red,very thick] (a) to[bend right] (b);
\end{tikzpicture}
\caption{\subcaptionref{sub1}: Left of the figure. \subcaptionref{sub2}: Right
of the figure}
\end{figure}
\end{document}
basicamente você, mas a imagem em um nó e você pode, mas outros nós no topo. dizendo ao tikz para lembrar os nós, você pode conectar esses nós posteriormente
Responder2
Você realmente não precisa do TikZ para isso. No entanto, permite mais liberdade e variabilidade em termos de sobreposição de gráficos. No estado em que se encontram, as sobreposições são possíveis por meio de \ooalign
:
\documentclass{memoir}% http://ctan.org/pkg/memoir
\usepackage{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\newsubfloat{figure}% Allows \subbottom and \subtop in figure
\newsavebox{\myfig}
\begin{document}
\begin{figure}
\centering
\savebox{\myfig}{\includegraphics[width=0.4\linewidth]{tiger}}% Store image
\subbottom[]{%
\label{sub1}%
\ooalign{\usebox{\myfig}\cr\hss\raisebox{\dimexpr.5\ht\myfig-.5\baselineskip}{\colorbox{white}{\Huge$\phi$}}\hss}}%
\subbottom[]{%
\label{sub2}%
\usebox{\myfig}}%
\caption{\subcaptionref{sub1}:~Left of the figure. \subcaptionref{sub2}:~Right of the figure}
\end{figure}
\end{document}
As imagens são colocadas em uma caixa ( \myfig
) para obter a altura adequada (via \ht\myfig
). \ooalign
sobrepõe o conteúdo duplo (imagem e fórmula) enquanto \raisebox
move a fórmula para a posição vertical.
Veresta respostapara um curso rápido em \ooalign
.