minipáginas no desalinhamento horizontal do fbox quando a figura é incluída (não flutuante)

minipáginas no desalinhamento horizontal do fbox quando a figura é incluída (não flutuante)

Estou tentando colocar algum texto e uma figura um ao lado do outro e tentando evitar o wrapfigure ao mesmo tempo :-)

Colocar duas minipáginas dentro de uma caixa emoldurada funciona perfeitamente: o texto pode ser alinhado pelo [t]op

No entanto, se eu colocar uma figura em uma minipágina em vez de um texto, recebo um desalinhamento.

MWE:

\documentclass[a4paper,10pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[danish]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx}

% Title Page
\title{Title}
\author{Author}

\begin{document}
\maketitle

\section*{Alignment problems}

\noindent\fbox{
\begin{minipage}[t]{0.7\textwidth}
 A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A
\end{minipage}
\begin{minipage}[t]{0.2\textwidth}
 B B B B B B B B B B B B B B B B B
\end{minipage}
}

\vspace{2cm}

\noindent\fbox{
\begin{minipage}[t]{0.7\textwidth}
 A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A
\end{minipage}
\begin{minipage}[t]{0.2\textwidth}
 \includegraphics[width=0.9\textwidth]{gull}
\end{minipage}
}
\end{document}

Isso resulta em algo assim Saída do código TeX acima

Responder1

O resultado é o esperado. Provavelmente não o quevocêesperado, no entanto.

Quando você faz \parbox[t]ou \begin{minipage}[t], o ponto de referência da caixa é o mesmo do primeiro item nela. O ponto de referência sempre fica na linha de base, a linha imaginária onde normalmente as letras são colocadas.

O ponto de referência do primeiro item na caixa que contém a imagem da gaivota é a parte inferior da imagem, na caixa de texto é a primeira linha feita de A's (porque um parágrafo é dividido em caixas largas).

Então você tem que fazer o TeX pensar que o ponto de referência da imagem da gaivota é mais alto. O adjustboxpacote vem para resgatar: sua valignchave permite colocar o ponto de referência como se uma única linha de texto estivesse acima da linha de base e o resto estivesse abaixo.

\documentclass[a4paper,10pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[danish]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage[export]{adjustbox}

% Title Page
\title{Title}
\author{Author}

\begin{document}
\maketitle

\section*{Alignment problems}

\noindent\fbox{
\begin{minipage}[t]{0.7\textwidth}
 A A A A A A A A A A A A A A A A A A A A A A A A
 A A A A A A A A A A A A A A A A A A A A A A A
\end{minipage}
\begin{minipage}[t]{0.2\textwidth}
 B B B B B B B B B B B B B B B B B
\end{minipage}
}

\vspace{2cm}

\noindent\fbox{
\begin{minipage}[t]{0.7\textwidth}
 A A A A A A A A A A A A A A A A A A A A A A A A
 A A A A A A A A A A A A A A A A A A A A A A A
\end{minipage}
\begin{minipage}[t]{0.2\textwidth}
 \includegraphics[width=0.9\textwidth,valign=t]{../duck}
\end{minipage}
}
\end{document}

insira a descrição da imagem aqui

Não tendo gaivota, optei pelo pato, que é o animal preferido deste site.

Alternativamente, adicione um item invisível a ambas as caixas:

\begin{minipage}[t]{0.7\textwidth}
 \vspace{0pt}
 A A A A A A A A A A A A A A A A A A A A A A A A
 A A A A A A A A A A A A A A A A A A A A A A A
\end{minipage}
\begin{minipage}[t]{0.2\textwidth}
 \vspace{0pt}
 \includegraphics[width=0.9\textwidth]{../duck}
\end{minipage}

O resultado será parecido: o primeiro item nas duas minipáginas é o espaço vertical.

Responder2

Antes de \includegraphics aplicar \vspace{-\baselineskip}. Isso moverá a parte inferior da imagem para baixo \baselineskip.

informação relacionada