Siempre me encantó el pequeño ancho de texto impuesto en ClassicThesis, pero es un problema cuando tenemos muchas imágenes/gráficos. Me gustaría tener dos tramas una al lado de la otra para ganar espacio (no son tramas muy importantes y no quiero "desperdiciar" una página entera en ellas). Sin embargo, tampoco \pgfplotsset{small}
encajan en el uso. Podría hacerlos aún más pequeños, pero se volvieron ilegibles.
¿Cuál es la mejor solución para solucionar este problema? ¿Agrandar el ancho del texto de la tesis clásica? ¿Usar makebox
para ignorar los márgenes? ¿Abandonar? Me gustaría obtener el mejor resultado tipográfico posible.
Respuesta1
Para mis casos similares, defino un nuevo entorno llamadoanchopara lo cual uso macro adjustwith
del paquete changewidth
:
\usepackage{calc}
\usepackage[strict]{changepage}
\newsavebox\widebox
\newenvironment{wide}%
{\@parboxrestore%
\begin{adjustwidth*}{}{-\marginparwidth-\marginparsep}%
\begin{lrbox}{\widebox}%
\begin{minipage}{\textwidth+\marginparsep+\marginparwidth}%
}{\end{minipage}\end{lrbox}
\usebox\widebox}%
\end{adjustwidth*}
}
El paquete calc
se utiliza para calcular el ancho del entorno y la cantidad de extensión delanchofuera del ancho del texto. Con {adjustwidth*}
la extensión siempre se va al borde exterior de la página. Ejemplo de su uso es:
\begin{figure}[htb] % or table
\begin{wide}
\includegraphics[width=\hsize]{example-image}
\caption{Ma wide figure}
\label{fig:wide}
\end{wide}
\end{figure}
Respuesta2
@Zarko ya publicó una buena respuesta para crear un wide
entorno para apilar las figuras en el interior. Dependiendo del diseño de página exacto del documento, para un documento de dos caras, en algunos casos prefiero usar el margen interior como tope:
Esto se puede hacer definiendo un nuevo \raggedout
comando que llame \flushleft
en una página de verso y \flushright
en una página de anverso:
% Symmetric ragged commands
\newcommand\IfOddPage{%
\checkoddpage
\ifoddpage\expandafter\@firstoftwo
\else\expandafter\@secondoftwo\fi}
\newcommand\raggedout{\IfOddPage\raggedright\raggedleft}
\newcommand\raggedin{\IfOddPage\raggedleft\raggedright}
Luego se utiliza en la definición de wide
lo siguiente:
\newenvironment{wide}{%
\begin{adjustwidth*}{0pt}{-\marginparsep-\marginparwidth}
\raggedout
}{%
\end{adjustwidth*}%
}
Finalmente, en algunos casos es posible que desees tener un espacio elástico entre las figuras, y usar \hfil
aquí pondrá una distancia igual entre el margen exterior y la figura exterior que entre las dos figuras mismas. La fuente de la imagen de arriba:
\begin{figure}
\begin{wide}
\begin{subfigure}
\psfragfig{PhD/Experiments/Gauss/fig/gauss-vertical}
\caption{Axial displacement down the centreline.\figlabel{gauss-vertical}}
\end{subfigure}%
\hfil % <= pay attention!
\begin{subfigure}
\psfragfig{PhD/Experiments/Gauss/fig/gauss-radial}
\caption{Radial displacement with a \SI{5}{mm} offset.\figlabel{gauss-radial}}
\end{subfigure}
\end{wide}
\caption[
Magnetic flux density measurements of a cylindrical permanent magnet.
]{
Magnetic flux density measurements of an \maggrade{35} neodymium \diameter\SI{100x30}{mm} cylindrical permanent magnet.
The origin of the measurements is \SI{5}{mm} from the face of the magnet.
}
\figlabel{gauss-meas}
\end{figure}