Seite 1 von 2

Grafikinkludierung führt zu falscher Seitenzahl im TOC

Verfasst: Mo 10. Jun 2013, 01:31
von semifredo
Moin,

ich habe meinem LaTeX-Dokument ein neues Kapitel "Anhang" hinzugefügt. Darin habe ich ein Bild mit
\ihead[]{Anhang A}
\addcontentsline{toc}{section}{AnhangA}
	\begin{figure}[h]
	\centering
	\caption{Anhang}
	\label{anhang}
	\end{figure}
inkludiert. Die Seitennummer ist IV, im Inhaltsverzeichnis wird allerdings V angezeigt, genau wie bei der darauffolgenden Seite (dort ist es korrekt).

Ich stelle fest, dass es richtig angezeigt wird, wenn ich über die figure etwas schreibe oder eine Kapitelüberschrift hinzufüge. Nur, wenn die figure alleine steht, klappt es nicht.
Ich möchte die Seite mit dem Bild füllen, daher geht es auch nicht anders.

Wie kann ich das beheben?

Hier noch meine Präämbel:
% Format der Seite
\documentclass[a4paper, 12pt]{article}
% deutsche Silbentrennung
\usepackage[ngerman]{babel}
% deutsche Umlaute
\usepackage[utf8]{inputenc}
\usepackage[a4paper, left=2.5cm, right=2.0cm, top=2.0cm, bottom=2.0cm]{geometry}
\usepackage{tikz}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage[automark]{scrpage2}
\usepackage{url}
\usepackage{hyperref}
\usepackage{listings}
\usepackage{color}
\usepackage{textcomp}
\usepackage{pdfpages}
\usepackage{microtype}
\usepackage{acronym}

% Zeilenabstand
\usepackage{setspace}
\onehalfspacing
\parindent0pt

% Schriftart
\usepackage[T1]{fontenc}

\renewcommand{\familydefault}{\sfdefault}
\usepackage{mathptmx}
\usepackage[scaled=.92]{helvet}
\usepackage{courier}
\urlstyle{same}

% handle the listings  
\definecolor{listinggray}{gray}{0.9}
\definecolor{lbcolor}{rgb}{0.9,0.9,0.9}
\lstset{
	backgroundcolor=\color{lbcolor},
	tabsize=4,
	rulecolor=,
        basicstyle=\scriptsize,
        upquote=true,
        aboveskip={1.5\baselineskip},
        columns=fixed,
        showstringspaces=false,
        extendedchars=true,
        breaklines=true,
        prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}},
        frame=single,
        showtabs=false,
        showspaces=false,
        showstringspaces=false,
        identifierstyle=\ttfamily,
        keywordstyle=\color[rgb]{0,0,1},
        commentstyle=\color[rgb]{0.133,0.545,0.133},
        stringstyle=\color[rgb]{0.627,0.126,0.941},
}



% Dokument
\begin{document}
\includepdf[pages=1]{DeckblattBA.pdf}
\setcounter{page}{1}

% Kopf- und Fusszeilen
\pagestyle{scrheadings}
%\cfoot{}
\ofoot[]{\pagemark}
\ohead{}


\thispagestyle{empty}


% Inhaltsverzeichnis
\tableofcontents
\ihead[]{\headmark} % print section tile (1st level) on each page
\chead[]{} 

% Inhalt
\include{einleitung}
\include{grundlagen}

% Römische Zählung
\renewcommand{\thepage}{\Roman{page}}
\setcounter{page}{1}
\ihead[]{}
\chead[]{} 

% Abbildungsverzeichnis
\addcontentsline{toc}{section}{\listfigurename}
\listoffigures

\newpage

% Literaturverzeichnis
\addcontentsline{toc}{section}{\bibname}
\nocite{*}
\bibliographystyle{gerplain}
\bibliography{literaturverzeichnis}

\include{abkuerzungsverzeichnis}
\include{anhang}

\ofoot[]{}
\ihead[]{}
\include{eidesstattlicheerklaerung}
\end{document}

Verfasst: Mo 10. Jun 2013, 07:55
von Besserwisser
Dann hast Du vermutlich etwas falsch gemacht. Beispielsweise könnte zwischen Abschnittüberschrift (article hat keine Kapitel!) und \addcontentsline ein Seitenumbruch sein. Aber das ist ohne vollständiges Minimalbeispiel reine Spekulation.

Ich würde Dir übrigens eine KOMA-Script-Klasse¹ empfehlen. Damit kann man sich beispielsweise die ganzen \addcontentsline sparen. Ich vermute sogar, dass Dir mit scrreprt besser geholfen wäre als mit scrartcl. Dann hättest Du nämlich auch Kapitel.

Wichtiger Hinweis: Dieser Beitrag enthält Links, die unbedingt verfolgt und beachtet werden sollten! Die Links wurden mit Sorgfalt erstellt und sind unabdingbarer Teil der Antwort!

__________
1 Die auf der Seite angegebene Version ist falsch. Die tatsächlich aktuelle Versionsnummer findet man auf der KOMA-Script-Release-Übersicht. Auch gibt die Seite nur einen sehr unzureichenden Überblick über die Vorteile der KOMA-Script-Klassen.

Verfasst: Mo 10. Jun 2013, 09:15
von Johannes_B
Zusätzlich noch wenige Anmerkungen von mir:
Schau dir bitte die Anweisung \pagenumbering{<style>} an. Mögliche Werte für style findest du unter
texdoc latex2e
.
Möchtest du in deinem Anhang wirklich Gleitumgebungen? Falls nein, kannst du mit dem Befehl \captionof{Objekttyp}[Verzeichniseintrag]{Titel} eine Beschriftung für Tabellen/Abbildungen/... (art) setzen. Komascript stellt dies zur Verfügung.
Da du ja hoffentlich zu einer Komaklasse (scrreport wurde dir bereits empfohlen) wechselt, lies dir in oben bereits verlinkter Anleitung den Abschnitt Absatzauszeichnung durch.

Wie du siehst, die Lektüre der Komascript-Dokumentation lohnt sich.

Verfasst: Mo 10. Jun 2013, 13:27
von semifredo
Danke für eure Anmerkungen.
Die scrreprt-Klasse gefällt mir ganz gut wegen dem whitespace bei neuen Kapiteln, aber ansonsten bin ich mit article bisher eigentlich auch ganz zufrieden.
Schaue ich mir aber trotzdem nochmal genauer an. Es handelt sich hierbei übrigens um eine Bachelorthesis.

Den Anhang möchte ich in einer Gleitumgebung haben, damit es im Abbildungsverzeichnis (listoffigures) erscheint.

Ich habe mal ein Minimalbeispiel erstellt, bitte werft da nochmal einen Blick drauf. Wie ihr seht, erscheint im Abbildungsverzeichnis die richtige Seitenzahl für den Anhang, im Inhaltsverzeichnis jedoch nicht.
% Format der Seite 
\documentclass[a4paper, 12pt]{article} 
% deutsche Silbentrennung 
\usepackage[ngerman]{babel} 
% deutsche Umlaute 
\usepackage[utf8]{inputenc} 
\usepackage[a4paper, left=2.5cm, right=2.0cm, top=2.0cm, bottom=2.0cm]{geometry} 
\usepackage{tikz} 
\usepackage{graphicx} 
\usepackage{epstopdf} 
\usepackage{booktabs} 
\usepackage{longtable} 
\usepackage[automark]{scrpage2} 
\usepackage{url} 
\usepackage{hyperref} 
\usepackage{listings} 
\usepackage{color} 
\usepackage{textcomp} 
\usepackage{pdfpages} 
\usepackage{microtype} 
\usepackage{acronym} 

% Zeilenabstand 
\usepackage{setspace} 
\onehalfspacing 
\parindent0pt 

% Schriftart 
\usepackage[T1]{fontenc} 

\renewcommand{\familydefault}{\sfdefault} 
\usepackage{mathptmx} 
\usepackage[scaled=.92]{helvet} 
\usepackage{courier} 
\urlstyle{same} 

% Dokument 
\begin{document} 
%\includepdf[pages=1]{DeckblattBA.pdf} 
\setcounter{page}{1} 

% Kopf- und Fusszeilen 
\pagestyle{scrheadings} 
%\cfoot{} 
\ofoot[]{\pagemark} 
\ohead{} 

\thispagestyle{empty} 
\begin{center} 
Deckblatt 
\end{center} 
\newpage 

% Inhaltsverzeichnis 
\tableofcontents 
\ihead[]{\headmark} 
\chead[]{} 

% Römische Zählung 
\renewcommand{\thepage}{\Roman{page}} 
\setcounter{page}{1} 
\ihead[]{} 
\chead[]{} 

\newpage 
% Abbildungsverzeichnis 
\addcontentsline{toc}{section}{\listfigurename} 
\listoffigures 

\addcontentsline{toc}{section}{Anhang A}
\newpage
\clearpage
\ihead[]{Anhang A}
    \begin{figure}[h] 
    \centering 
    \rule{15cm}{20cm} 
    \caption{Anhang} 
    \label{anhang} 
    \end{figure} 
\clearpage 
\newpage 

\ofoot[]{} 
\ihead[]{}
%\include{eidesstattlicheerklaerung} 
\end{document}

Verfasst: Mo 10. Jun 2013, 13:40
von Genmutant
Wieso, das stimmt doch alles.
Dein Anhang A beginnt auf Seite II, wie im Inhaltsverzeichnis steht. Dann machst du eine neue Seite und packst da eine Gleitumgebung hin, die da auch landet. Die ist also auf Seite III, genau wie das Abbildungsverzeichnis sagt.

Das ist übrigens bei weitem kein Minimalbeispiel.

Verfasst: Mo 10. Jun 2013, 13:42
von u_fischer
Wie ihr seht, erscheint im Abbildungsverzeichnis die richtige Seitenzahl für den Anhang, im Inhaltsverzeichnis jedoch nicht.
Nun, was erwartest du auch anderes? Der \addcontentsline ist doch vor dem \newpage und damit auf der Seite davor.

N.B: Lass das mit all diese \ofoot[]{} \ihead[]{}-Befehlen im Dokument. Die sind für die Definition von Seitenstilen in der Präambel. Benutze \pagestyle-Befehle und \markboth/\markright.

Verfasst: Mo 10. Jun 2013, 13:45
von semifredo
Ich möchte aber, dass im Inhaltsverzeichnis auf die Seite 3 verwiesen wird.
Wenn ich es folgendermaßen aufbaue
\newpage
\clearpage
\addcontentsline{toc}{section}{Anhang A}
\ihead[]{Anhang A}
    \begin{figure}[h] 
    \centering 
    \rule{15cm}{20cm} 
    \caption{Anhang} 
    \label{anhang} 
    \end{figure} 
\clearpage
\newpage
Erscheint es gar nicht mehr im Inhaltsverzeichnis. Wenn ich danach noch eine Seite habe, erscheint es im Inhaltsverzeichnis aber eine Nummerierung zu hoch.

Verfasst: Mo 10. Jun 2013, 14:05
von u_fischer
Verzichte auf die Floatumgebung.
\clearpage
\markboth{Anhang A}{Anhang A}
\addcontentsline{toc}{section}{Anhang A}
\begingroup
\centering
\rule{15cm}{20cm}
\captionof{figure}{Anhang}
\label{anhang}
\endgroup
\newpage
\captionof wird von den KOMA-Klassen, vom caption-Paket und von capt-of definiert.

Verfasst: Mo 10. Jun 2013, 15:37
von semifredo
Danke, ihr habt mir sehr geholfen!

Ich verwende nun die scrreprt-Klasse und \captionof.
Die \ifoot, etc. Sachen habe ich auch entfernt.

Das Dokument wirkt direkt viel aufgeräumter :-)

Verfasst: Mo 10. Jun 2013, 16:15
von Johannes_B
Die Anmerkung zu den Gleitumgebungen und captionof kam übrigens auch schon von mir, ich hoffe du liest dir trotzdem durch, was ich dir zu pagenumbering und parskip empfohlen habe.