figuras de minipágina lado a lado

figuras de minipágina lado a lado

Eu tenho esse código onde a parte marcada Aé igual à parte marcada, Bexceto que .4in Aestá .45in B. Apesar de serem tão parecidas a primeira coloca as imagens lado a lado com a mais à direita alinhada à direita mas a segunda não faz isso. Não entendo por que há uma diferença. Alguém poderia explicar isso.

\documentclass{article}
\usepackage{colortbl}
\usepackage{graphicx}
\begin{document}

\begin{center} 
\noindent\colorbox{blue}{\parbox[t][0.5cm][c]{\textwidth}{\bfseries{HEADER}}}
\end{center} 

\noindent\begin{minipage}{\textwidth}

%A
\noindent\begin{minipage}[b]{.4\textwidth}
\includegraphics[width=2in]{elephant}
Some text.
\end{minipage} 
\hfill
\begin{minipage}[b]{.4\textwidth}
\includegraphics[width=2in]{elephant}
Some more text.
\end{minipage}

\end{minipage}

\vspace{5ex}

%B
\noindent\begin{minipage}{\textwidth}

\noindent\begin{minipage}[b]{.45\textwidth}
\includegraphics[width=2in]{elephant}
Some text.
\end{minipage} 
\hfill
\begin{minipage}[b]{.45\textwidth}
\includegraphics[width=2in]{elephant}
Some more text.
\end{minipage}

\end{minipage}

\end{document}

Saída:

captura de tela

As informações do Creative Commons sobre a imagem do elefante sãoaqui

Responder1

Em A) você declara uma largura de .4\textwidthpara miniboxes e uma largura de 2inpara as imagens, mas 2in > .4\textwidth (com margens padrão); suas imagens na verdade são mais largas que o espaço reservado para elas e as imagens ultrapassam a margem direita (verifique isso usando a draftopção de classe e olhando o .logarquivo).

Em B) as imagens agora têm espaço suficiente 2in <.45\textwidth, pois os minipages preenchem a largura do texto, mas não as imagens; a imagem na segunda minipágina é composta iniciando a minipágina, então você terá um espaço em branco de largura .45\textwidth-2in(você pode verificar isso usando \fboxem torno de cada minipageconfiguração \fboxseppara 0pt).

No seu cabeçalho você não está levando em consideração \fboxsep(o espaçamento entre a caixa e seu conteúdo) e isso causará uma caixa muito cheia (a largura para o \parboxmust be \textwidth-2\fboxsep).

No código a seguir usei a draftopção de classe ( \hboxcheios demais serão sinalizados usando uma regra preta) e coloquei as minipáginas usando uma moldura vermelha para que você possa ver o que realmente está acontecendo:

\documentclass[draft]{article}
\usepackage{colortbl}
\usepackage{graphicx}

\newcommand\Mybox[1]{%
  \setlength\fboxsep{0pt}\fcolorbox{red}{white}{#1}
}

\begin{document}

\begin{center} 
\noindent\colorbox{blue}{\parbox[t][0.5cm][c]{\textwidth}{\bfseries{HEADER}}}
\end{center} 

\noindent\begin{minipage}{\textwidth}

%A
\noindent\Mybox{\begin{minipage}[b]{.4\textwidth}
\includegraphics[width=2in]{elephant}
Some text.
\end{minipage}} 
\hfill
\Mybox{\begin{minipage}[b]{.4\textwidth}
\includegraphics[width=2in]{elephant}
Some more text.
\end{minipage}}

\end{minipage}

\vspace{5ex}

%B
\noindent\begin{minipage}{\textwidth}

\noindent\Mybox{\begin{minipage}[b]{.45\textwidth}
\includegraphics[width=2in]{elephant}
Some text.
\end{minipage}} 
\hfill
\Mybox{\begin{minipage}[b]{.45\textwidth}
\includegraphics[width=2in]{elephant}
Some more text.
\end{minipage}}

\end{minipage}

\end{document}

E o resultado:

insira a descrição da imagem aqui

Aqui está uma versão modificada do seu código; using width=\linewidthgarante que as imagens ocuparão exatamente o espaço disponível dentro do minipages:

\documentclass{article}
\usepackage{colortbl}
\usepackage[demo]{graphicx}
\usepackage{lipsum}

\begin{document}

\begin{center} 
\colorbox{blue}{\parbox[t][0.5cm][c]{\dimexpr\textwidth-2\fboxsep\relax}{\bfseries{HEADER}}}
\end{center} 

\lipsum[2]

\noindent\begin{minipage}[b]{.4\textwidth}
\includegraphics[width=\linewidth]{elephant}
Some text.
\end{minipage}%
\hfill
\begin{minipage}[b]{.4\linewidth}
\includegraphics[width=\textwidth]{elephant}
Some more text.
\end{minipage}

\end{document}

insira a descrição da imagem aqui

Responder2

Para colocar as figuras lado a lado você pode tentar este (tudo é tratado automaticamente e você pode usar mais ou menos números de figuras: 2, 3, 4, etc.):

\usepackage{graphicx}
\usepackage{subfigure}
\begin{document}

\begin{figure}[ht]
\centering
\subfigure[Subfigure 1 title]{
    \rule{2.8cm}{2cm}
    \label{fig:subfig1}
}
\subfigure[Subfigure 2 title]{
    \rule{2.8cm}{2cm}
\label{fig:subfig2}
}
\subfigure[Subfigure 3 title]{
    \rule{2.8cm}{2cm}
    \label{fig:subfig3}
}
\subfigure[Subfigure 4 title]{
    \rule{2.8cm}{2cm}
    \label{fig:subfig4}
}
\caption[Optional caption for list of figures]{General Caption of subfigures 1-4}
\label{fig:subfigureExample1}
\end{figure}

Reference to figure1:
    \ref{fig:subfigureExample1} 
and 
    \ref{fig:subfig4}.

\end{document}

insira a descrição da imagem aqui

And the referencing:

insira a descrição da imagem aqui

Ou este (você deve fornecer imagens subfig5.jpg para subfig8.jpg):

\usepackage{graphicx}
\usepackage{subfigure}
\begin{document}
\begin{figure}[ht]
\centering
\subfigure[Subfigure 5 title]{
    \includegraphics[width=0.4\columnwidth, keepaspectratio]{subfig5.jpg}
    \label{fig:subfig5}
}
\subfigure[Subfigure 6 title]{
    \includegraphics[width=0.4\columnwidth, keepaspectratio]{subfig6.jpg}       
    \label{fig:subfig6}
}
\subfigure[Subfigure 7 title]{
    \includegraphics[width=0.4\columnwidth, keepaspectratio]{subfig7.jpg}    
    \label{fig:subfig7}
}
\subfigure[Subfigure 8 title]{
    \includegraphics[width=0.4\columnwidth, keepaspectratio]{subfig8.jpg}    
    \label{fig:subfig8}
}
\caption[Optional caption for list of figures 5-8]{General Caption of subfigures 5-8}
\label{fig:subfigureExample2}
\end{figure}

Reference to figure:
    \ref{fig:subfigureExample2} 
and 
    \ref{fig:subfig6}.

\end{document}

insira a descrição da imagem aqui

And the referencing:

insira a descrição da imagem aqui

Dica: o pacote "Subfigure" pode ser antigo, mas faz qualquer coisa automaticamente. Tentei várias opções e achei a mais útil.

Responder3

Se você não gosta de usar subfigura, use "legenda" e "sublegenda":

\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{figure}  
    \centering
    \begin{subfigure}[t]{0.4\columnwidth}
        \centering
        \includegraphics[width=\columnwidth, keepaspectratio]
        {frog.jpg}
        \caption{Subfigure 1 title}\label{fig:subfig1}      
    \end{subfigure}
    \quad
    \begin{subfigure}[t]{0.4\columnwidth}
        \centering
        \includegraphics[width=\columnwidth, keepaspectratio]
        {frog.jpg}
        \caption{Subfigure 2 title}\label{fig:subfig2}
    \end{subfigure}
    \begin{subfigure}[t]{0.4\columnwidth}
        \centering
        \includegraphics[width=\columnwidth, keepaspectratio]
        {frog.jpg}
        \caption{Subfigure 3 title}\label{fig:subfig3}      
    \end{subfigure}
    \quad
    \begin{subfigure}[t]{0.4\columnwidth}
        \centering
        \includegraphics[width=\columnwidth, keepaspectratio]
        {frog.jpg}
        \caption{Subfigure 4 title}\label{fig:subfig4}
    \end{subfigure}
    \caption{General Caption of subfigures 1-4}\label{fig:subfigureExample1}
\end{figure}    

Testing Reference to figure:
Figure \ref{fig:subfigureExample1} and Figure \ref{fig:subfig4}.

\end{document}

insira a descrição da imagem aqui

informação relacionada