Imagens empilhadas horizontalmente: lacuna vertical indesejada

Imagens empilhadas horizontalmente: lacuna vertical indesejada

Estou tentando empilhar três imagens horizontalmente. As imagens têm o mesmo tamanho, quero alinhá-las sem nenhuma lacuna vertical. Eu segui as instruções que encontrei emesta resposta:

\blindtext

    \begin{figure}[!htb]
        \minipage{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-ambientale.png}
        \caption{Componente ambientale}
        \label{fig:Componente ambientale}
        \endminipage\hfill
        \minipage{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-diffusa.png}
        \caption{Componente ambientale e diffusa}
        \label{fig:Componente ambientale e diffusa}
        \endminipage\hfill
        \minipage{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-speculare.png}
        \caption{Componente ambientale, diffusa e speculare}
        \label{fig:Componente ambientale, diffusa e speculare}
        \endminipage
    \end{figure}

    \blindtext      

Mas esse é o resultado que obtenho:

insira a descrição da imagem aqui

Suponho que seja porque as legendas têm comprimentos diferentes. Mas não posso alterar o título da legenda. Existe uma maneira de fazer com que a lacuna desapareça?

Responder1

Os minipages não estão alinhados. minipagetem alguns argumentos opcionais:

\begin{minipage}[pos(c,t,b)][height][contentpos(c,t,b,s)]{width}
    Minipage content
\end{minipage}

A legenda mais longa na Figura 3 estende as margens minipagetanto para cima quanto para baixo. Então, se você quiser que os minipages se alinhem, você terá que alinhá-los na parte inferior ou superior - talvez algo como

\documentclass[draft]{article}

\usepackage{graphicx}
\usepackage{blindtext}

\begin{document}

\blindtext

    \begin{figure}[!htb]
        \minipage[t][][t]{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-ambientale.png}
        \caption{Componente ambientale}
        \label{fig:Componente ambientale}
        \endminipage\hfill
        \minipage[t][][t]{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-diffusa.png}
        \caption{Componente ambientale e diffusa}
        \label{fig:Componente ambientale e diffusa}
        \endminipage\hfill
        \minipage[t][][t]{0.32\textwidth}
        \includegraphics[width=\linewidth]{Immagini/teiera-speculare.png}
        \caption{Componente ambientale, diffusa e speculare}
        \label{fig:Componente ambientale, diffusa e speculare}
        \endminipage
    \end{figure}

    \blindtext 


\end{document}

Responder2

O subcaptionpacote oferece \subcaptionboxcomando, que alinha automaticamente as subfiguras pela primeira linha da legenda.

Sua sintaxe é:

\subcaptionbox[<listentry>]{<heading>}[<width>][<inner-pos>]{<contents>}
\subcaptionbox*{<heading>}[<width>][<inner-pos>]{<contents>}

O título é usado para legenda. Para mais detalhes, consulte subcaptiona página 6 da documentação.

Código:

\documentclass{article}

\usepackage{graphicx}    
\usepackage{blindtext}
\usepackage{subcaption}

\begin{document}

\blindtext

    \begin{figure}[!htb]
        \subcaptionbox{Componente ambientale\label{fig:Componente ambientale}}[0.32\textwidth][t]{%
        \includegraphics[width=0.32\linewidth]{example-image-a}
        }\hfill
        \subcaptionbox{Componente ambientale e diffusa\label{fig:Componente ambientale e 
                  diffusa}}[0.32\textwidth][t]{%
        \includegraphics[width=0.32\linewidth]{example-image-b}
        }\hfill
        \subcaptionbox{Componente ambientale, diffusa e speculare some text to fill\label{fig:Componente ambientale,
                  diffusa e speculare}}[0.32\textwidth][t]{%
        \includegraphics[width=0.32\linewidth]{example-image-c}
        }
    \end{figure}

    \blindtext


\end{document}

insira a descrição da imagem aqui

informação relacionada