Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Inhaltsverzeichnis auf einer Seite erzwingen

  1. #1
    Registrierter Benutzer
    Registriert seit
    12.01.2008
    Beiträge
    25

    Inhaltsverzeichnis auf einer Seite erzwingen

    Hallo zusammen,

    ich schreibe gerade an einem Dokument mit TexnicCenter und habe ein kleines Problem. Und zwar füge ich mit \tableofcontents ein Inhaltsverzeichnis ein. Dieses wird jedoch auf 2 Seiten verteilt. Auf der zweiten Seite sind nur 3 Zeilen belegt, von daher sieht es also ziemlich blöd aus.

    Kann ich irgendwie erzwingen, dass Latex das Inhaltsverzeichnis auf eine Seite macht? Genug Platz wäre auf jeden Fall da, das ganze Verzeichnis müsste eben etwas nach oben gerückt werden.

    Vielen Dank schon mal im Voraus.


    Hier noch meine Einstellungen:

    \documentclass[11pt]{scrreprt}
    \usepackage[latin1]{inputenc}
    \usepackage{ngerman}
    \usepackage[onehalfspacing]{setspace}
    \usepackage{hyperref}
    \usepackage{listings}
    \usepackage{graphicx}
    \usepackage[left=3cm,right=3cm,top=2cm,bottom=3cm]{geometry}
    \usepackage{caption}

  2. #2
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Spontaner Einfall, wenn ich deinen Header seh:
    Das onehalfspacing erst nach dem Inhaltsverzeichnis aktivieren, es sei denn, das ist aufgrund deiner Vorgaben nicht möglich. Bei mir ists keinem aufgefallen

    Sonst könnte auch ein \enlargethispage helfen.

  3. #3
    Registrierter Benutzer
    Registriert seit
    12.01.2008
    Beiträge
    25
    Hallo,

    danke für die Antwort. Mit enlargethispage habe ich auch schon ein bisschen rumgespielt. Konnte aber überhaupt keinen Effekt erkennen. Habe vor und nach \tableofcontens geschrieben: \enlargethispage{2cm}

    Keine Ahnung warum man da nichts sieht. Onehalfspacing erst nach dem Inhaltsverzeichnis aktivieren ist leider nicht möglich. Da wurde ich "festgenagelt".

    Wie gesagt, in dem fertigen Dokument sind oberhalb von "Inhaltsverzeichnis" bestimmt 5 cm Platz. Wenn also das ganze einfach um einen oder 2 cm nach oben verschoben werden könnte, dann sollte das denke ich ausreichend sein.

    Kennt jemand für diesen Zweck einen Befehl?

    Mir ist eben aufgefallen, dass ich ja das Package "geometry" verwende, um die Margins rechts links oben und unten zu manipulieren. Gibt es eine Möglichkeit, das auch nur für eine Seite zu tun und nicht für das ganze Dokument?

  4. #4
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534

    Inhaltsverzeichnis Seite vergrößern

    Hallo Schniepie,

    setze \enlargethispage so ein:
    Code:
    \tableofcontents
    \addtocontents{toc}{\protect\enlargethispage{Wert}}
    Um zudem den Abstand des Inhaltsverzeichnisses nach oben zu ändern, könntest Du ggf. noch \chapterheadstartvskip redefinieren, als leeres Makro {} oder gar mit einem \vspace und negativem Wert.

    Viele Grüße,

    Stefan

  5. #5
    Registrierter Benutzer
    Registriert seit
    12.01.2008
    Beiträge
    25
    Hallo Stefan K,

    vielen Dank für die Antwort! Mit
    Code:
    \addtocontents{toc}{\protect\enlargethispage{Wert}}
    hat es funktioniert. Was das genau macht verstehe ich allerdings nicht. Könntest du mir da vielleicht noch auf die Sprünge helfen? Nur so aus Interesse. Habe schon mal ein bisschen gegoogelt und mit enlargethispage rumgespielt, aber es scheint bei mir gar keinen Unterschied zu machen, was ich da für einen Wert in cm eintrage. Sehr seltsam.

    \chapterheadstartvskip hat übrigens nur bewirkt, dass vor dem Inhaltsverzeichnis eine Seite frei gelassen wird. War das so von dir beabsichtigt? Und \vspace mit negativem Wert hat leider auch keinen Effekt gehabt. Kann es sein, dass das geht nur wenn man sich mitten im Text befindet und nicht am Anfang des Dokuments?!

    Aber auf jeden Fall vielen Dank für die Hilfe!!!

  6. #6
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534

    \chapterheadstartvskip

    Hallo Schniepie,

    statt \enlargethispage direkt ins Dokument zu schreiben, wird mit obiger Zeile \enlargethispage ins toc-file geschrieben, wo die Inhaltsverzeichnis-Anweisungen stehen. Es steht ein \protect davor, damit \enlargethispage{Wert} nicht sofort expandiert wird, sondern "geschützt" ist und einfach ins toc-file geschrieben wird. Beim Einbinden des toc-files durch \tableofcontents zeigt es dann Wirkung.

    Zu \chapterheadstartvskip schreibe ich mal auf, wie ich es verwenden würde, kommentiert:
    Code:
    % ein Makro zur Sicherung des ursprünglichen \chapterheadstartvskip deklarieren:
    \newcommand*\backupvskip{}
    % eine Kopie von \chapterheadstartvskip sichern:
    \let\backupvskip\chapterheadstartvskip
    % \chapterheadstartvskip redefinieren:
    \renewcommand*\chapterheadstartvskip{\vspace{-2\baselineskip}}
    % ab nun ist der Abstand vom Seitenkopf zur Kapitelüberschrift geringer
    \tableofcontents
    % ursprüngliches \chapterheadstartvskip-Makro wiederherstellen:
    \let\chapterheadstartvskip\backupvskip
    % ab jetzt also wieder normale Abstände bei Kapitelüberschriften.
    Viele Grüße,

    StefanK

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •