У меня есть латексный документ, в котором мне нужно изменить поля только на нескольких страницах (страницы, на которых я добавляю много графики).
В частности, я бы хотел изменить верхние поля ( \voffset
). Я пробовал делать:
\addtolength{\voffset}{-4cm}
% Insert images here
\addtolength{\voffset}{4cm}
но это не сработало. Я видел ссылки на пакет геометрии, но не нашел, как использовать его для нескольких страниц, а не для всего документа.
Есть подсказки?
Используйте пакет "geometry" и напишите,
\newgeometry{left=3cm,bottom=0.1cm}
где вы хотите изменить поля. Когда вы хотите сбросить поля, вы пишете\restoregeometry
.источник
geometry
командами заключается в том, что они сбрасывают текст на следующую страницу, если они используются в середине страницы, поскольку геометрия определена для «страницы».\newpage
или\pagebreak
это необходимые и естественные команды, которые вы используете в первую очередь.Я много боролся с различными решениями, включая \ 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- Это также может исправить следующее предупреждение:
2- Для более подробного ответа посмотрите это .
3- Я только что обнаружил, что это более подробное описание ответа Кевина Чена.
источник
\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
источник
Для цифр вы можете использовать метод, описанный здесь:
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}
Позволяет расположить фигуру по центру страницы, выступая за оба поля, а не только за правое поле.
Обычно это помогает с изображениями. Обратите внимание, что при использовании этого метода заголовок изображения по-прежнему будет находиться в пределах обычных полей страницы (что хорошо).
источник
Небольшая модификация этого, чтобы изменить
\voffset
работу для меня:\newenvironment{changemargin}[1]{ \begin{list}{}{ \setlength{\voffset}{#1} } \item[]}{\end{list}}
А затем поместите свои фигуры в
\begin{changemargin}{-1cm}...\end{changemargin}
окружающую среду.источник
Найдите
\enlargethispage
ссылку на LaTeX.источник
У меня была такая же проблема с проектором. Для меня работал с использованием среды столбцов:
\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}
источник
Я не мог найти простого способа установить поля для одной страницы.
Моим решением было использовать vspace с желаемым количеством сантиметров пустого пространства:
\vspace*{5cm}
Я поместил эту команду в начало страниц, на которых я хотел иметь + 5 см поля.
источник