Automatisierte Erstellung eines umfangreichen verlinkten Anlageverzeichnis unter Verwendung von pdfpages
Liebe Community,
anbei zunächst ein MWE zur Verdeutlichung meines Problems:
%!TEX TS-program = lualatex
%!TEX encoding = UTF-8 Unicode
%!TEX spellcheck=de_DE
\documentclass{scrreprt}%
% ----------------------------------------------------------------------------
\usepackage[tuenc]{fontspec}%
\usepackage{scrletter}
\usepackage{pdfpages}
\usepackage{enumitem}
\usepackage{polyglossia}
\setdefaultlanguage{german}
\usepackage{mwe}
\usepackage{hyperref}
% ----------------------------------------------------------------------------
\renewcaptionname{ngerman}{\enclname}{Anlage}% Ist in babel falsch.
\makeatletter
\newcommand*{\encllist}{}% Hierrin sammeln wir die Anlagen
\newcounter{encl}% Zähler für die Anlagen
\newcounter{suencl}% Zähler für die Anlagen
\newcounter{subencl}%[encl]
\AtBeginLetter{% Bei jedem Brief neu beginnen …
\renewcommand*{\encllist}{}% mit leerer Liste …
\setcounter{encl}{0}% und bei Zählerstand 0
\setcounter{suencl}{0}% und bei Zählerstand 0
\setcounter{subencl}{0}% und bei Zählerstand 0
}
\newcommand{\addencl}[1]{\g@addto@macro\encllist{\item #1}}% \encllist wird um ein \item erweitert
\newcommand{\useencl}[2]{%
\refstepcounter{encl}%
\refstepcounter{suencl}%
#1 als \textbf{\hyperlink{#2}{\enclname~\theencl}}% Anlage direkt im Text aufführen …
\addencl{#1}% und der Anlagenliste hinzufügen.
}
\newcommand{\su}{\thesuencl.1}
\makeatother
\setkomavar{enclseparator}[\bfseries]{Anlageverzeichnis}
%%============================================================================
\begin{document}
\begin{letter}
Wir haben Ihnen das \useencl{Dokument}{\su} beigefügt.
Wir haben Ihnen das \useencl{Dokument 2}{\su} beigefügt.
\encl{% Anlagen als Aufzählung ausgeben:
\begin{enumerate}[label={\enclname~\arabic*:}]%
\encllist% gesammelte Anlagenliste ausgeben
\end{enumerate}}
\pagebreak
%%============================================================================
%% Dieser nachfolgende Teil sollte nach Möglichkeit entfallen
\refstepcounter{subencl}
Anlage~\thesubencl\\-- Dokument --
\pdfbookmark{Anlage~\thesubencl}{Anlage~\thesubencl}
\includepdf[link,linkname=\thesubencl,landscape=false,pages=-]{example-image-a4}% Die jeweils %einzubindenden Pdf-Dateien haben dieselben Namen wie der zugehörige \thesubencl (beginnen also %mit 1.pdf)
\refstepcounter{subencl}
Anlage~\thesubencl\\-- Dokument 2 --
\pdfbookmark{Anlage~\thesubencl}{Anlage~\thesubencl}
\includepdf[link,linkname=\thesubencl,landscape=true,pages=-]{example-image-a4}% Die jeweils %einzubindenden Pdf-Dateien haben dieselben Namen wie der zugehörige \thesubencl (beginnen also %mit 1.pdf)
\end{letter}
%%============================================================================
\end{document}
Ich würde mir nun wünschen, dass ich im Dokument nur noch einen Befehl mit bestenfalls zwei Argumenten verwenden könnte, dessen erstes Argument die jeweilige Anlage beschreibt und dessen optionales Argument darüber entscheidet, ob die eingebundene Anlage mit
landscape=true
oder
landscape=false
eingebunden wird. Der Befehl zur Einfügung von Dokument 2 könnte bei Verwendung dann in etwa so aussehen
\useencl[true]{Dokument 2}
Dieser sollte dann im besten Falle den Code-Teil im MWE nach
\end{enumerate}
entbehrlich machen.
Hierbei ist darauf hinzuweisen, dass die Anlagen jeweils nur einmal im Text referenziert werden und die entsprechenden Pdf-Dokumente aufsteigend numerisch - in der Reihenfolge ihrer Referenzierung im Text - benannt sind, sodass der Wert von
\theencl
auch dem Namen der einzubindenden Datei entspricht. Dies lies sich ohne Beifügung weiterer Dokumente im MWE nicht darstellen. Ich hoffe jedoch, es ist trotzdem klar geworden, worum es mir geht.
Vielen Dank im Voraus.