PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anhangsverzeichnis



kema
28-12-2012, 13:00
Hallo zusammen,

mein Problem ist etwas spezieller, evtl. kann mir aber doch jemand helfen.

Ich habe hier (http://www.komascript.de/node/458) entdeckt, wie man ein Anhangsverzeichnis erstellt. Das klappt auch wunderbar bis auf die Tatsache, dass die Seitenzahlen im Anhangsverzeichnis nicht schön rechtsbündig ausgerichtet sind. Das ist so aufgrund des Befehls "\includepdf", denn wenn ich diesen Befehl auskommentiere, sieht das Anhangsverzeichnis vorbildlich aus.

Also: So funktioniert alles wunderbar:

\documentclass[a4paper,titlepage,12pt,bibliography=totoc,BCOR=8mm ,twoside]{scrreprt}

% 1. PACKAGES
\usepackage{exscale, amssymb, amsmath, tocbasic}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc} %für Umlaute; ansinew: win, utf8: linux
\usepackage{pdfpages}

% 2. Für ein separates Anhangsverzeichnis
%normales Ihaverz einfügen mit \maintoc
%im Anhang erst Anhang ankündigen mit \appendix und dann Anhangsverzeichnis einfügen mit \appendixtoc
\makeatletter% --> De-TeX-FAQ
\newcommand*{\maintoc}{% Hauptinhaltsverzeichnis
\begingroup
\@fileswfalse% kein neues Verzeichnis öffnen
\renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
\value{tocdepth}=-10000 % lokal tocdepth auf sehr kleinen Wert setzen
}%
\tableofcontents% Verzeichnis ausgeben
\endgroup
}
\newcommand*{\appendixtoc}{% Anhangsinhaltsverzeichnis
\begingroup
\edef\@alltocdepth{\the\value{tocdepth}}% tocdepth merken
\setcounter{tocdepth}{-10000}% Keine Verzeichniseinträge
\renewcommand*{\contentsname}{% Verzeichnisname ändern
Anhangsverzeichnis}%
\renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
\setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
}%
\tableofcontents% Verzeichnis ausgeben
\setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
\endgroup
}
\newcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
}
\g@addto@macro\appendix{% \appendix erweitern
\if@openright\cleardoublepage\else\clearpage\fi% Neue Seite
\addcontentsline{toc}{chapter}{\appendixname}% Eintrag ins Hauptverzeichnis
\addtocontents{toc}{\protect\appendixattoc}% Trennanweisung in die toc-Datei
}
\makeatother

\begin{document}

\appendix
\pagenumbering{Roman}
\setcounter{page}{1}

\appendixtoc
\chapter{Allgemeines}
\section*{Blabla}

\chapter{Allgemeineres}
\section*{c}\addcontentsline{toc}{section}{c}
\section*{f}\addcontentsline{toc}{section}{f}

\chapter{Am Allgemeinsten}
\section*{Gruppe a}\addcontentsline{toc}{section}{o}
\section*{Gruppe b}\addcontentsline{toc}{section}{p}
\section*{Gruppe c}\addcontentsline{toc}{section}{q}

\end{document}

Sobald ich aber \includepdf dazunehme, ist das Anhangsverzeichnis nicht mehr schön rechtsbündig:


\documentclass[a4paper,titlepage,12pt,bibliography=totoc,BCOR=8mm ,twoside]{scrreprt}

% 1. PACKAGES
\usepackage{exscale, amssymb, amsmath, tocbasic}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc} %für Umlaute; ansinew: win, utf8: linux
\usepackage{pdfpages}

% 2. Für ein separates Anhangsverzeichnis
%normales Ihaverz einfügen mit \maintoc
%im Anhang erst Anhang ankündigen mit \appendix und dann Anhangsverzeichnis einfügen mit \appendixtoc
\makeatletter% --> De-TeX-FAQ
\newcommand*{\maintoc}{% Hauptinhaltsverzeichnis
\begingroup
\@fileswfalse% kein neues Verzeichnis öffnen
\renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
\value{tocdepth}=-10000 % lokal tocdepth auf sehr kleinen Wert setzen
}%
\tableofcontents% Verzeichnis ausgeben
\endgroup
}
\newcommand*{\appendixtoc}{% Anhangsinhaltsverzeichnis
\begingroup
\edef\@alltocdepth{\the\value{tocdepth}}% tocdepth merken
\setcounter{tocdepth}{-10000}% Keine Verzeichniseinträge
\renewcommand*{\contentsname}{% Verzeichnisname ändern
Anhangsverzeichnis}%
\renewcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
\setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
}%
\tableofcontents% Verzeichnis ausgeben
\setcounter{tocdepth}{\@alltocdepth}% tocdepth wiederherstellen
\endgroup
}
\newcommand*{\appendixattoc}{% Trennanweisung im Inhaltsverzeichnis
}
\g@addto@macro\appendix{% \appendix erweitern
\if@openright\cleardoublepage\else\clearpage\fi% Neue Seite
\addcontentsline{toc}{chapter}{\appendixname}% Eintrag ins Hauptverzeichnis
\addtocontents{toc}{\protect\appendixattoc}% Trennanweisung in die toc-Datei
}
\makeatother

\begin{document}

\appendix
\pagenumbering{Roman}
\setcounter{page}{1}

\appendixtoc
\chapter{Allgemeines}
\section*{Blabla}

\chapter{Allgemeineres}
\section*{c}\addcontentsline{toc}{section}{c}
\section*{f}\addcontentsline{toc}{section}{f}

\chapter{Am Allgemeinsten}
\section*{Gruppe a}\addcontentsline{toc}{section}{o}
\includepdf[pages=-,pagecommand={\thispagestyle{plain}}, landscape]{beliebiges.pdf}\addcontentsline{toc}{section}{j}

\section*{Gruppe c}\addcontentsline{toc}{section}{q}

\includepdf[pages=-,pagecommand={\thispagestyle{plain}}, landscape]{beliebiges.pdf}\addcontentsline{toc}{section}{k}

\end{document}

Hat jemand eine Idee, wie ich das Problem lösen könnte, sodass die Seitenzahlen im Anhangsverzeichnis rechtsbündig ausgerichtet sind?

Vielen Dank im Voraus für eure Hilfe,
kema

rais
28-12-2012, 15:16
Moin moin,


Ich habe hier (http://www.komascript.de/node/458) entdeckt, wie man ein Anhangsverzeichnis erstellt. Das klappt auch wunderbar bis auf die Tatsache, dass die Seitenzahlen im Anhangsverzeichnis nicht schön rechtsbündig ausgerichtet sind. Das ist so aufgrund des Befehls "\includepdf", denn wenn ich diesen Befehl auskommentiere, sieht das Anhangsverzeichnis vorbildlich aus.

ich vermute eher, daß Dein Problem mit der römischen Paginierung bzw. der reservierten Breite für die Seitenzahl im TOC zu tun hat und Du besser angegeben hättest, wie viele Seiten Dein `beliebiges.pdf' einfügt.
Z. B. ist `XXVIII' breiter als `28', aber der Test hätte genausogut auf `XX' (20) oder `L' (50) für Einträge `j'+`q' fallen können -- dann sieht man das Problem nicht mal.
Ergänze mal südlich von \makeatletter und nördlich von \makeatother


\renewcommand*\@pnumwidth{3em}
\renewcommand*\@tocrmarg{3.5em}

\@pnumwidth ist die reservierte Breite für die Seitenzahl eines Eintrags im TOC, \@tocrmarg der Mindestabstand des TOC-Eintrags zum rechten Textrand (an den auch die Seitenzahl gesetzt wird).

MfG

kema
29-12-2012, 12:30
Hallo rais,

klasse, so funktioniert es! Vielen vielen Dank dafür. :) Das pdf hatte nur eine Seite, falls das nun noch wichtig ist.

Viele Grüße,
kema