
Ich habe Dutzende von Abbildungen, die ich mit der folgenden Codekombination in eine PDF-Datei einfügen werde:
% allpdfs.tex
\documentclass{article}
\usepackage{pdfpages}
\newcommand{\myimagelist}[2]{\includepdf[fitpaper=true]{#2}}
\begin{document}
\input{filelist}
\end{document}
wo meine Dateiliste PDF-Abbildungen und ihre Speicherorte enthält:
% filelist.tex
\myimagelist{some label}{some path/pdffile1}
\myimagelist{some other label}{some path/pdffile2}
% ....
meine Frage lautet: Wie ändere ich den ersten Code, um Lesezeichen in die PDF-Datei entsprechend den Titeln oder Beschriftungen der Abbildungen einzufügen, die ich darin einfüge?
Antwort1
link
Mit dieser Option können Sie für jede eingefügte Seite \includepdf
einen Link hinzufügen <file name>.<page number>
. Damit können Sie das Ziel für einen Lesezeichen-Link angeben:
\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}
Im obigen Beispiel enthält das Lesezeichen sowohl die Bezeichnung als auch den Dateinamen, der in Klammern angehängt ist. Es ist auch möglich, den Dateinamen in ein anderes Lesezeichen einzufügen:
\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}%
}
Ich habe den Dateinamen eingefügt, \detokenize
um Probleme mit zu vermeiden _
.