Liebe Community, anbei zunächst ein MWE zur Verdeutlichung meines Problems: Öffne in Overleaf
%!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 Öffne in Overleaf
landscape=true oder Öffne in Overleaf
landscape=false eingebunden wird. Der Befehl zur Einfügung von Dokument 2 könnte bei Verwendung dann in etwa so aussehen Öffne in Overleaf
\useencl[true]{Dokument 2} Dieser sollte dann im besten Falle den Code-Teil im MWE nach Öffne in Overleaf
\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 Öffne in Overleaf
\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. |
Hier einmal ein verkürztes Beispiel, wie man so etwas recht einfach mit Öffne in Overleaf
\documentclass[listof=entryprefix]{scrartcl} \usepackage[ngerman]{babel}% funktioniert mit pdflatex, xelatex, lualatex \usepackage{scrletter} \usepackage{pdfpages} \usepackage{mwe} \usepackage{hyperref} \let\encl\relax% Damit die Umgebung encl definiert werden kann \DeclareNewTOC[% type=encl, name=Anlage, float,% nonfloat wäre genauso OK listname=Anlagenverzeichnis ]{encl} \makeatletter \newcommand*{\addencl}[2][]{% \providecommand*{\printencls}{\listofencls}% \g@addto@macro{\printencls}{% \clearpage \pdfbookmark{Anlage~\the\numexpr\value{encl}+1\relax: \detokenize{#2}}{#2}% \includepdf[pages=-,pagecommand={\thispagestyle{plain}},addtolist={1,encl,#2,encl:#2},#1]{#2}% }% \hyperref[encl:#2]{\texttt{\detokenize{#2}}}% } \makeatother \setkomavar{fromname}{Ich} \setkomavar{fromaddress}{Hier} \begin{document} \begin{letter}{Sie\\Da} \opening{Sehr geehrte Damen und Herren,} In \addencl{example-image-a} haben wir Ihnen ein erstes Beispiel angegeben. Ebenso finden Sie in \addencl{example-image-a4} eine ganze DIN-A4-Seite. Im Querformat sei \addencl[landscape]{example-image-a4-landscape} angegeben. \closing{Bingo} \printencls \end{letter} \end{document} Option Das optionale Argument von Der Verweis im Text wird übrigens einfach per Bei Verwendung von Desweiteren sei auf Paket Es sei nicht verschwiegen, dass obiges Beispiel je nach Dateinamen der eingebundenen PDFs Probleme aufwerfen kann. Das liegt dann beispielsweise an den für Natürlich kann man das Ganze so nicht mehr mit normalen Anlagen via beantwortet 30 Okt '17, 11:22 gast3 Vielen lieben Dank für das anschauliche Beispiel!
(30 Okt '17, 12:29)
TeX-Newb
|
Wenn Du ohnehin schon eine KOMA-Script-Klasse und daher auch das Paket
tocbasic
verwendest, warum machst Du dann nicht ein ganz normales Verzeichnis damit? Einträge können dann prinzipiell mit derpdfpages
-Optionaddtolist
vorgenommen werden. Das heißt, die ganzen Anlagen werden dann ausschließlich mit\includepdf
hinzugefügt. Aber vermutlich übersehe ich mal wieder etwas …Hättest Du dafür ggf. einen kurzen Vorschlag? Ich habe bislang leider noch nicht mit tocbasic gearbeitet. Wichtig ist mir insbesondere, dass weiterhin eine Verlinkung der Anlage im Text zur jeweiligen Stelle des eingebundenen Dokuments gegeben ist. Ich lese allerdings gerade einmal in der Koma-Anleitung zu tocbasic. Danke schon mal für den Hinweis.