
我有幾十個圖形,我將使用以下程式碼組合將它們包含在一個 PDF 文件中:
% allpdfs.tex
\documentclass{article}
\usepackage{pdfpages}
\newcommand{\myimagelist}[2]{\includepdf[fitpaper=true]{#2}}
\begin{document}
\input{filelist}
\end{document}
我的文件列表包含 pdf 圖表及其位置:
% filelist.tex
\myimagelist{some label}{some path/pdffile1}
\myimagelist{some other label}{some path/pdffile2}
% ....
我的問題是,如何修改第一個程式碼以根據我包含在其中的圖形的標題或標籤在 PDF 中包含書籤?
答案1
選項link
為每個包含的頁面\includepdf
新增連結。<file name>.<page number>
這可用於指定書籤連結的目標:
\documentclass{article}
\usepackage{pdfpages}
\usepackage{hyperref}
\usepackage{bookmark}
\bookmarksetup{
numbered,
open,
}
\newcommand*{\myimagelist}[2]{%
\bookmark[
dest={#2.1},% see option `linkname' of \includepdf
keeplevel,
rellevel=1,
]{#1 (\detokenize{#2})}%
\includepdf[
fitpaper,
link,
% linkname={#2},% see option `dest' of \bookmark
]{#2}%
}
\begin{document}
\section{Images}
\myimagelist{some label}{some path/pdffile1}
\myimagelist{some other label}{some path/pdffile2}
\end{document}
在上面的範例中,書籤包含標籤,並且檔案名稱附加在括號中。也可以將檔案名稱放入另一個書籤中:
\newcommand*{\myimagelist}[2]{%
\bookmark[
dest={#2.1},% see option `linkname' of \includepdf
keeplevel,
rellevel=1,
]{#1}%
\bookmark[
dest={#2.1},% see option `linkname' of \includepdf
keeplevel,
rellevel=2,
]{\detokenize{#2}}%
\includepdf[
fitpaper,
link,
% linkname={#2},% see option `dest' of \bookmark
]{#2}%
}
我已將文件名放入\detokenize
以避免問題_
。