Látex: cambie los márgenes de solo unas pocas páginas

90

Tengo un documento Latex en el que necesito cambiar los márgenes de solo unas pocas páginas (las páginas en las que estoy agregando muchos gráficos).

En particular, me gustaría cambiar los márgenes superiores ( \voffset). He intentado hacer:

\addtolength{\voffset}{-4cm}

% Insert images here

\addtolength{\voffset}{4cm}

pero no funcionó. He visto referencias al paquete de geometría, pero no he encontrado cómo usarlo para un montón de páginas y no para todo el documento.

¿Alguna pista?

pgb
fuente

Respuestas:

66

Lo he usado beamer, pero no para documentos generales, pero parece que eso es lo que sugiere la sugerencia original

\newenvironment{changemargin}[2]{%
\begin{list}{}{%
\setlength{\topsep}{0pt}%
\setlength{\leftmargin}{#1}%
\setlength{\rightmargin}{#2}%
\setlength{\listparindent}{\parindent}%
\setlength{\itemindent}{\parindent}%
\setlength{\parsep}{\parskip}%
}%
\item[]}{\end{list}}

Entonces para usarlo

\begin{changemargin}{-1cm}{-1cm}

no te olvides de

\end{changemargin}

al final de la página

Obtuve esto de Cambiar márgenes "sobre la marcha" en las Preguntas frecuentes de TeX.

ansate
fuente
3
Esto funciona mejor para mí que usar geometría, ya que la inclusión del paquete de geometría en el preámbulo ya rompe el diseño del estilo que debo usar.
MAK
¡Muchas gracias por esto!
SRG
152

Utilice el paquete de "geometría" y escriba \newgeometry{left=3cm,bottom=0.1cm}dónde desea cambiar sus márgenes. Cuando desee restablecer sus márgenes, escriba \restoregeometry.

Kevin Chen
fuente
5
Gracias, esto funciona perfectamente. Descubrí que fue útil mirar la documentación porque hay muchas otras opciones de margen además de izquierda, derecha, arriba y abajo: sharelatex.com/learn/Page_size_and_margins
Noah Sussman
3
El único problema con los geometrycomandos es que arrojan el texto a la página siguiente si se usa en el medio de una página, ya que la geometría está definida para "página".
Emadpres
@Emadpres Ya que quieres definir nuevos márgenes para algunas páginas, \newpageo \pagebreakson comandos necesarios y naturales los utilizas primero.
CK
13

Estaba luchando mucho con diferentes soluciones, incluido \ vspace {-Xmm} en la parte superior e inferior de la página y lidiar con advertencias y errores. Finalmente encontré esta respuesta:

Puede cambiar los márgenes de solo una o más páginas y luego restaurarlo a su valor predeterminado:

\usepackage{geometry}
...
... 
...
\newgeometry{top=5mm, bottom=10mm}     % use whatever margins you want for left, right, top and bottom.
...
... %<The contents of enlarged page(s)>
...    
\restoregeometry     %so it does not affect the rest of the pages.
...
... 
...

PD:

1- Esto también puede solucionar la siguiente advertencia:

Advertencia de LaTeX: Flota demasiado grande para la página por ... pt en la línea de entrada ...

2- Para una respuesta más detallada, mira esto .

3- Acabo de descubrir que esto es más elaborado sobre la respuesta de Kevin Chen.

Alisa
fuente
5
\par\vfill\break % Break Last Page

\advance\vsize by 8cm % Advance page height
\advance\voffset by -4cm % Shift top margin
% Start big page
Some pictures
% End big page
\par\vfill\break % Break the page with different margins

\advance\vsize by -8cm % Return old margings and page height
\advance\voffset by 4cm % Return old margings and page height
Alexey Malistov
fuente
2

Para obtener cifras, puede usar el método descrito aquí:
http://texblog.net/latex-archive/layout/centering-figure-table/
es decir, haga algo como esto:

\begin{figure}[h]
\makebox[\textwidth]{%
        \includegraphics[width=1.5\linewidth]{bla.png}
    }
\end{figure}

Tenga en cuenta que si tiene subfiguras en la figura, probablemente querrá ingresar al modo de párrafo dentro del cuadro, así:

\begin{figure}[h]
\makebox[\textwidth]{\parbox{1.5\textwidth}{ %
\centering
\subfigure[]{\includegraphics[width=0.7\textwidth]{a.png}}
\subfigure[]{\includegraphics[width=0.7\textwidth]{b.png}}
\end{figure}

Para permitir que la figura esté centrada en la página, sobresaliendo en ambos márgenes en lugar de solo en el margen derecho.
Esto generalmente funciona con las imágenes. Tenga en cuenta que con este método, el título de la imagen seguirá estando delimitado por los márgenes normales de la página (lo cual es bueno).

shoosh
fuente
2

Una pequeña modificación de esto para cambiar las \voffsetobras para mí:

\newenvironment{changemargin}[1]{
  \begin{list}{}{
    \setlength{\voffset}{#1}
  }
  \item[]}{\end{list}}

Y luego ponga sus figuras en un \begin{changemargin}{-1cm}...\end{changemargin}ambiente.

Noé
fuente
0

Busque \enlargethispageen alguna referencia de LaTeX.

Ninguna
fuente
2
¿Podría agregar más detalles, incluida una solución, a su respuesta?
Steve Westbrook
0

Tuve el mismo problema en una presentación con proyector. Para mí, trabajé usando el entorno de columnas:

\begin{frame}
  \begin{columns}
    \column{1.2\textwidth}
    \begin{figure}
      \subfigure{\includegraphics[width=.49\textwidth]{1.png}}
      \subfigure{\includegraphics[width=.49\textwidth]{2.png}}
    \end{figure}
   \end{columns}
\end{frame}
usuario3510575
fuente
-1

No pude encontrar una manera fácil de establecer el margen para una sola página.

Mi solución fue usar vspace con la cantidad de centímetros de espacio vacío que quería:

 \vspace*{5cm}                                                             

Puse este comando al principio de las páginas que quería tener + 5cm de margen.

Neaţu Ovidiu Gabriel
fuente