figuras de minipágina una al lado de la otra

figuras de minipágina una al lado de la otra

Tengo este código donde la parte marcada Aes la misma que la parte marcada Bexcepto que .4en Aestá .45en B. Aunque son muy similares, el primero coloca las imágenes una al lado de la otra, al mismo nivel que la derecha, pero el segundo no hace eso. No entiendo por qué hay una diferencia. ¿Alguien podría explicar eso?

\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}

Producción:

captura de pantalla

La información de creative commons sobre la imagen del elefante esaquí

Respuesta1

En A) declaras un ancho de .4\textwidthpara miniboxes y un ancho de 2inpara las imágenes, pero 2in > .4\textwidth (con márgenes predeterminados); De hecho, sus imágenes son más anchas que el espacio reservado para ellas y las imágenes se desbordan por el margen derecho (verifique esto usando la draftopción de clase y mirando el .logarchivo).

En B) las imágenes ahora tienen suficiente espacio ya que 2in <.45\textwidthlos minipages llenan el ancho del texto pero no las imágenes; la imagen en la segunda minipágina está escrita a partir de la minipágina, por lo que tendrá un espacio en blanco de ancho .45\textwidth-2in(puede verificar esto usando \fboxalrededor de cada minipageconfiguración \fboxsep) 0pt.

En su encabezado no está teniendo en cuenta \fboxsep(el espacio entre el cuadro y su contenido) y esto provocará que el cuadro esté demasiado lleno (el ancho debe \parboxser \textwidth-2\fboxsep).

En el siguiente código utilicé la draftopción de clase ( \hboxlos archivos demasiado llenos se indicarán mediante una regla negra) y encerré las minipáginas con un marco rojo para que puedas ver lo que realmente está sucediendo:

\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}

Y el resultado:

ingrese la descripción de la imagen aquí

Aquí hay una versión modificada de su código; El uso width=\linewidthgarantiza que las imágenes ocuparán exactamente el espacio disponible dentro del 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}

ingrese la descripción de la imagen aquí

Respuesta2

Para poner figuras una al lado de la otra puedes probar con esta (todo se maneja automáticamente y puedes usar más o menos número 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}

ingrese la descripción de la imagen aquí

And the referencing:

ingrese la descripción de la imagen aquí

O este (debes proporcionar imágenes subfig5.jpg a 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}

ingrese la descripción de la imagen aquí

And the referencing:

ingrese la descripción de la imagen aquí

Sugerencia: el paquete "Subfigure" puede ser antiguo, pero hace todo automáticamente. Probé varias opciones y encontré la más útil.

Respuesta3

Si no le gusta usar subtítulos, utilice "título" y "subtítulo":

\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}

ingrese la descripción de la imagen aquí

información relacionada