Иногда при создании текста в LaTeX бывает необходимо вставить одну или несколько страниц из уже готовых PDF-документов. Есть несколько способов это сделать в LaTeX. Один из них — воспользоваться пакетом pdfpages.
Посмотрим, что может делать пакет pdfpages для вставки страниц из PDF-файла.
Подключение пакета
\usepackage[options]{pdfpages}Необязательный параметр options может принимать значения final, draft, demo, nodemo и enable-survey. По умолчанию используется параметр final, который вставляет страницы. Следующий параметр draft не вставляет страницы, а вместо этого печатает поле и имя файла, demo — вставляет пустые страницы вместо реальных PDF-файлов. Использование остальных параметров в целом сомнительно.
Синтаксис вызова
\includepdf[key=val]{filename}где:
key=val— список параметров, разделенных запятыми, с использованием синтаксиса ключ = значение;
bigstruts— имя файла PDF-документа.
Параметры, взятые в [ ] — не обязательные.
Основные параметры вызова команды
Параметр pages показывает, какие страницы документа использовать из указанного PDF-файла:
pages={1,5,8,13}вставляет соответственно перечисленные страницы: первую, пятую, восьмую, тринадцатую;pages={1-5,8-13}вставляет соответственно перечисленные страницы, включая диапазон, то есть все страницы с первой по пятую и все страницы с 8 по 13;pages={1-5, {}, 8}Если в каком-то месте документа необходимо вставить пустую страницу, используется {}. При такой записи в документ вставится с первой по пятую страницу, пустая страница и восьмая страница документа;pages=-вставляет все страницы документа;pages=lastвставляет последнюю страницу документа;- pages=last-1 вставляет все страницы документа в обратном порядке;
- по умолчанию pages=1 вставляет первую страницу документа (если не указывать параметр, взятый в []
\includepdf, то будет именно этот вариант).
Параметр nup позволяет скомпоновать несколько страниц на каждом листе как плиточки:
nup=3х2скомпонует страницы и разместит их три по горизонтали и две по вертикали;- по умолчанию
nup=1x1размещает одну страницу на лист; - обязательно используйте этот параметр в сочетании с параметром
pages, иначе команда не знает, какие именно листы располагать плиточками.
Параметр landscape позволяет скомпоновать несколько страниц на каждом листе как плиточки:
- landscape=true — горизонтальный вид страницы;
- по умолчанию landscape=false — вертикальный вид страницы.
Параметры положения страниц
Далее рассмотрим основные параметры при компоновке страниц, особенно актуально при выставленном параметре nup.
- delta
устанавливает горизонтальное и вертикальное пространство между страницами. Параметр должен быть двухмерным, по умолчанию:delta=0 0; - offset
смещает начало вставленных страниц. Параметр также должен быть двухмерным, разделенным пробелом, по умолчанию:offset=0 0; - frame
устанавливает рамку вокруг каждой логической страницы. Рамка состоит из линий толщиной\fboxrule. Значение параметра true или false, по умолчанию:frame=false; - column
команда\includepdfпо умолчанию использует последовательность страниц в строках вдоль бумаги. Параметр column изменяет вывод на макет, где последовательные страницы размещаются в колонки вниз по бумаге. Может бытьtrueилиfalse, по умолчанию:column=false; - columnstrict
в некоторых случаях страницы не заполняют полностью последнюю страницу и тогда они располагаются немного в хаотичном порядке. Параметр columnstrict задает строгий макет для последней страницы. Может бытьtrueилиfalse, по умолчанию:columnstrict=false; - turn
по умолчанию страницы в альбомном формате отображаются в альбомной ориентации. С помощьюturn=falseэто можно запретить. Может бытьtrueилиfalse, по умолчанию:turn=true.
Примеры использования
\includepdf[pages=-, nup=2x3, landscape=true, frame=true, delta=10 30, column=true, columnstrict=true]{img/exmpl.pdf}Запись означает, вставить все страницы, расположить по 6 листов на листе 2х3 по горизонтали и вертикали, на альбомном листе, для каждой страницы добавить рамочку, отступ между страницами 10 и 30 по горизонтали и вертикали, листы размещать по колонкам и на последней странице должен быть строгий порядок размещения. Так и получается:
