Включая полные документы LaTeX в других
В настоящее время я заканчиваю свою диссертацию и хотел бы иметь возможность включать некоторые документы в мой документ LaTeX.
Файлы, которые я хотел бы включить, - это еженедельные отчеты, сделанные в LaTeX моему супервизору. Очевидно, что все документы пронумерованы по отдельности.
Я бы хотел, чтобы они были включены в итоговый документ.
Я мог бы объединить все окончательные PDF файлы, используя GhostScript или какой-либо другой инструмент, но я хотел бы иметь согласованную нумерацию по всему документу.
Я попытался включить LaTeX из каждого документа в основной документ, но преамбула и т.д. вызывает проблемы, а маленький заголовок, который у меня есть в каждом отчете, занимает целую страницу...
В общем, я ищу способ включить несколько отдельных или 2-страничных файлов LaTeX в большом отчете, сохраняя их оригинальные макеты, но изменяя нумерацию страниц.
Ответы
Ответ 1
Сохранение исходного форматирования на документ будет затруднено, если они используют разные форматы. Например, объединение разных классов документов будет практически невозможно.
Я предлагаю вам пойти с решением GhostScript с небольшим завихрением. Латекс позволяет указать номер стартовой страницы, например, с помощью \setcounter {page} {13}. Если вы можете найти приложение, которое может считать страницы PDF-документа (pdfinfo в pdfjam Ubuntu - один пример), вы можете сделать следующее:
- Скомпилируйте следующий документ в формате PDF
- Объединение последнего PDF с текущим полным PDF
- Найти количество страниц в полном формате PDF
- Используйте sed, чтобы вырвать команду \setcounter {page} {N} в следующий латексный файл
- Вернитесь к началу
Если вам нужно выполнить любую другую обработку, снова используйте sed. Вы должны (предполагая, что вы исправите бесконечный цикл в вышеупомянутом алгоритме;-)) в конечном итоге с окончательным PDF-документом со всеми оригинальными конкатенированными и непрерывными номерами строк PDF.
Ответ 2
Для возможного решения \input
-обложения исходных файлов LaTeX при пропуске их преамбулы может помочь пакет newclude.
В противном случае вы можете использовать pdfpages для вставки ранее существующих PDF файлов в свою диссертацию. Кажется, я помню, что у него есть функция "подавления" исходных номеров страниц, покрывая их белыми ящиками.
Ответ 3
Предложение от @Will Robertson отлично работает. Я просто хотел бы добавить пример для всех ленивых людей:
\usepackage{pdfpages}
...
% Insert _all_ pages from some_pdf.pdf:
\includepdf[pages=-]{some_pdf} % the .pdf extension may be omitted
Из документации пакета:
- Чтобы включить определенный диапазон страниц, вы можете сделать
pages={4-9}
. Если start опущен, по умолчанию используется первая страница, если конец опущен, по умолчанию используется последняя страница.
- Чтобы включить его в альбомном режиме, сделайте
landscape=true
Ответ 4
Посмотрите combine пакет, который, кажется, именно то, что вы ищете.
Поскольку он объединяет документы на исходном уровне, я думаю, что номера страниц будут правильными.