Pdf

生成超連結目錄並插入現有 PDF

  • April 24, 2016

我有一個現有的 PDF(沒有任何相應的源文件)和一個文本文件,它是 PDF 文件中引用部分的項目列表,以及每個項目的頁碼。我想生成一個新的 PDF,它以生成的目錄索引開頭,然後是原始 PDF 的內容。生成的索引需要超連結,以便點擊任何項目將自動跳轉到包含引用部分的頁面。

我正在尋找一套合適的工具(最好是面向 CLI 的)來在 Linux 上完成這項工作;到目前為止,我看過的所有工具似乎都沒有提供解決方案。我是一位經驗豐富的程序員,如果需要(最好在 Ruby/Python/Perl/shell 中)編寫程式碼來解析我的文本文件並將其轉換為超連結索引,我非常樂意,但我找不到合適的工具解決它。我認為問題的一部分是超連結需要指向同一個文件,但它們的目標直到後來 ToC 與原始 PDF 結合時才會存在。

我也熟悉各種標記語言,例如 Markdown、reStructuredText、TeX、LaTeX、org-mode,理想的解決方案是使用其中一種作為生成超連結 ToC 的中間步驟。

這完全取自@Herbert 在 TeX StackExchange 上回答了一個非常相似的問題:

將目錄添加到現有 PDF

使用包pdfpages,然後:

\documentclass{article}
\usepackage{pdfpages}
\usepackage{hyperref}

\begin{document}

\tableofcontents
\clearpage\phantomsection
\addcontentsline{toc}{section}{The first section name}% or chapter
\includepdf[pages={1-10},linktodoc,linktodocfit=/Fit]{texte/dtk/dtk11-1/komoedie.pdf}
\clearpage\phantomsection
\addcontentsline{toc}{section}{The second section name}% or chapter
\includepdf[pages={11-19},linktodoc,linktodocfit=/Fit]{texte/dtk/dtk11-1/komoedie.pdf}
\clearpage\phantomsection
\addcontentsline{toc}{section}{The third section name}% or chapter
\includepdf[pages={20-29},linktodoc,linktodocfit=/Fit]{texte/dtk/dtk11-1/komoedie.pdf}
\clearpage\phantomsection
\addcontentsline{toc}{section}{The forth section name}% or chapter
\includepdf[pages={21-39},linktodoc,linktodocfit=/Fit]{texte/dtk/dtk11-1/komoedie.pdf}

\end{document}

引用自:https://unix.stackexchange.com/questions/97695