
Учитывая, что есть, скажем, пять статей, занимающих 30 страниц PDF БЕЗ исходных файлов TeX, как мне сделать оглавление, чтобы перечислить каждую из них по LaTeX? Более того, как назначить номера страниц для каждого включенного PDF?
решение1
Используйте пакет tocloft, а затем добавьте его \tableofcontents
в то место главного документа, где вы хотите разместить оглавление.
Чтобы добавить раздел в оглавление, если они не подхватываются автоматически, вы можете использовать код ниже. Просто добавьте его под каждым заголовком раздела, который вы хотите видеть в оглавлении, заменив section_name на заголовок раздела.
\addcontentsline{toc}{Chapter}{\protect\numberline{}section_name}
Главу можно заменить на другой тип раздела, например, раздел или подраздел, чтобы определить уровень, на котором она отображается в оглавлении.
Если у вас нет четко определенных разделов, то используйте что-то вроде
\clearpage
\phantomsection\addcontentsline{toc}{chapter}{\protect\numberline{section_name}
предоставит точку привязки для оглавления и добавит section_name для точки ссылки на оглавление.
решение2
Используйте пакет pdfpages
для включения PDF-файлов и включите команду разбиения на разделы или добавления к содержимому в pagecommand
опции \includepdf
команды.
Например, предположим, что у вас есть базовый .tex
файл и два PDF-файла для прикрепления в pdfs
подкаталоге. (Обязательно выполните компиляцию дважды.)
\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\tableofcontents
\section{Main Text}
Two attachments follow. % I show two different ways below.
% (1) With a section command in the main file
% (the heading will be printed on a separate page,
% but will not overlap with inserted PDF content)
\clearpage\section{First Attachment}
\includepdf[pages=-]{pdfs/doc1} % pages=- means all pages
% (2) With a pagecommand (heading will be printed ON
% the inserted PDF, so may overlap with content)
\includepdf[pages=1, pagecommand={\section{Second Attachment}}]{pdfs/doc2}
\includepdf[pages=2-last]{pdfs/doc2}
\end{document}
PDF 1 (скомпилирован из pdfs/doc1.tex)
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\lipsum[1-19]
\end{document}
PDF 2 (скомпилирован из pdfs/doc2.tex)
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\lipsum[20-29]
\end{document}