乳胶-仅更改几页的边距


90

我有一个Latex文档,在这里我只需要更改几页(我要添加很多图形的页面)的边距。

特别是,我想更改顶部边距(\voffset)。我试着做:

\addtolength{\voffset}{-4cm}

% Insert images here

\addtolength{\voffset}{4cm}

但这没用。我已经看到了几何包的参考,但是我还没有找到如何将其用于一堆页面,而不是整个文档。

有什么提示吗?

Answers:


66

我在中使用了此功能beamer,但未在一般文档中使用过它,但看起来这正是原始提示所暗示的

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

然后用

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

别忘了

\end{changemargin}

在页面末尾

我是从TeX常见问题解答中“实时”更改边距中获得的。


3
这对我来说比使用几何图形更好,因为在序言中包含几何图形软件包已经破坏了我需要使用的样式的布局。

非常感谢!
SRG

151

使用“几何”包,然后\newgeometry{left=3cm,bottom=0.1cm}在要更改边距的位置写上。要重置边距时,请输入\restoregeometry


5
谢谢你,这很完美。我发现它有助于查看文档,因为除了左,右,顶部和底部外,还有许多其他边距选项:sharelatex.com/learn/Page_size_and_margins
Noah Sussman

3
geometry命令的唯一问题是,如果在页面中间使用,它们会将文本刷新到下一页,因为几何是为“页面”定义的。
Emadpres

@Emadpres因为要为某些页面定义新的边距,\newpage或者\pagebreak您首先要使用必要的自然命令。
CK

13

我在各种解决方案上苦苦挣扎,包括页面顶部和底部的\ vspace {-Xmm}以及处理警告和错误。终于我找到了这个答案:

您可以只更改一页或多页的页边距,然后将其恢复为默认值:

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

PS:

1-这也可以解决以下警告:

LaTeX警告:浮动太大,无法在输入行上逐页...

2-有关更详细的答案,请查看

3-我刚刚发现,这是对陈凯文答案的更多阐述。


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

2

对于数字,您可以使用此处描述的方法:
http : //texblog.net/latex-archive/layout/centering-figure-table/
即执行以下操作:

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

请注意,如果图中有子图,则可能要在框内进入段落模式,如下所示:

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

为了允许图形在页面中居中,突出到两个页边距中,而不仅是右边距。
这通常可以解决图像问题。请注意,使用此方法,图像的标题仍将由页面的正常页边距分隔(这是一件好事)。


2

对此稍作修改即可\voffset为我更改作品:

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

然后将您的人物放在\begin{changemargin}{-1cm}...\end{changemargin}环境中。



0

在投影仪演示中,我遇到了同样的问题。对我来说,使用列环境工作:

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

-1

我找不到一种简单的方法来为单个页面设置边距。

我的解决方案是将vspace与我想要的空白空间的厘米数结合使用:

 \vspace*{5cm}                                                             

我将此命令放在希望有+ 5cm边距的页面的开头。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.