PDF-Lesezeichen nach Bildtiteln oder Beschriftungen

PDF-Lesezeichen nach Bildtiteln oder Beschriftungen

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

linkMit dieser Option können Sie für jede eingefügte Seite \includepdfeinen 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, \detokenizeum Probleme mit zu vermeiden _.

verwandte Informationen