
Quero colocar duas figuras lado a lado, mas nas extremidades, ou seja, a primeira subfigura deve estar na extrema esquerda e a segunda subfigura deve estar na extrema direita. Como isso pode ser feito? Estou usando o código mostrado abaixo
\begin{figure}[htp!]
\begin{subfigure}{0.5\textwidth}
\includegraphics[scale=0.17]{x.png}
\end{subfigure}
\begin{subfigure}{0.2\textwidth}
\raggedright
\includegraphics[scale=0.35]{y.png}
\end{subfigure}
\end{figure}
Responder1
No (La)TeX você pode incluir comprimentos de largura flexível, os chamados saltos, e pode esticá-los e reduzi-los em ordens de infinito. A \hfill
se comporta como um salto de 0pt de largura, mas que se estende com uma segunda ordem de infinito, portanto ocupará tanto espaço quanto disponível (desde que não haja outros \hfill
s na mesma caixa horizontal). Portanto, podemos \hfill
separar seus subfigure
s o máximo possível nessa linha.
EDITARAnexando e desenvolvendo as informações fornecidas emComentário de @JohnKormylo:
As ordens do infinito são fil
,, fill
e filll
(do menor para o maior, também existe fi
, mas isso praticamente nunca é usado e está disponível apenas em Lua(La)TeX). Normalmente, o código do pacote e do kernel deve usar esparsamente o infinito de segunda ou terceira ordem e seguir fil
, para que os usuários possam facilmente anulá-los. Isto é, por exemplo, verdadeiro para \parfillskip
, que é anexado no final de cada parágrafo para definir a última linha irregular e normalmente tem o valor 0pt plus 1fil
. Se você usasse agora \hfil
(o que equivale a \hskip 0pt plus 1fil
), não colocaria a segunda imagem no final da linha, mas usaria apenas metade do espaço disponível, a outra metade seria preenchida por \parfillskip
. É por isso que precisamos usar pelo menos o infinito de segunda ordem (que é infinitamente maior que a primeira ordem) e usar \hfill
.
\hfilll
a propósito, não está definido e você teria que usar \hspace{0pt plus 1filll}
(ou \hskip 0pt plus 1filll
).
\documentclass[]{article}
\usepackage{subcaption}
\usepackage[]{graphicx}
\begin{document}
\begin{figure}
\begin{subfigure}{0.5\textwidth}
\includegraphics[width=\linewidth, page=1]{example-image-duck}
\caption{A pizza duck}
\end{subfigure}\hfill
\begin{subfigure}{0.2\textwidth}
\raggedright
\includegraphics[width=\linewidth, page=4]{example-image-duck-portrait}
\caption{A clairvoyant duck}
\end{subfigure}%
\caption{Ducks}
\end{figure}
\end{document}
Responder2
Com relação ao comentário @Skillmon
Embora os pacotes subfig
e subfigure
estejam obsoletos e não devam mais ser usados. Obs: subfig
suporte hyperref
com BUGS!
\usepackage{subfig}
...
\begin{figure}[!ht]
\subfloat[Picture 1\label{fig:1}]{%
\includegraphics[width=0.4\textwidth]{1.png}
}
\hfill
\subfloat[Picture 2\label{fig:2}]{%
\includegraphics[width=0.4\textwidth]{2.png}
}
\caption{Main figure caption}
\end{figure}