Bookmarks hyperref: Gliederungsebenen nicht richtig

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Bookmarks hyperref: Gliederungsebenen nicht richtig

Danke

von IrenaSekuta » Do 22. Apr 2010, 09:09

Hallo Markus,

herzlichen Dank für den Hinweis. Habe in der Hyperref-Anleitung nach dem Stichwort "toclevel" gesucht und bin fündig geworden.

Durch hinzufügen von
\makeatletter
\providecommand*{\toclevel@subsubparagraph}{7}
\makeatother
wird nun auch meine selbst erstellte Überschriftenebene richtig zugeordnet.

Gruß,

Irena

von KOMA » Do 8. Apr 2010, 18:29

LaTeX selbst kennt überhaupt keine Ebenen. Das ist allein eine Sache der Klassen. Das Problem dürfte sein, dass hyperref nur die Ebenen \part bis \subparagraph mit den Ebenendefinitionen
\expandafter\ifx\csname chapter\endcsname\relax
  \def\toclevel@part{0}%
\else
  \def\toclevel@part{-1}%
\fi
\def\toclevel@chapter{0}
\def\toclevel@section{1}
\def\toclevel@subsection{2}
\def\toclevel@subsubsection{3}
\def\toclevel@paragraph{4}
\def\toclevel@subparagraph{5}
\def\toclevel@figure{0}
\def\toclevel@table{0}
kennt.

Wenn man also neue Ebenen hinzufügt, muss man vermutlich für hyperref auch entsprechende toclevel-Anweisungen definieren. Wieviele Ebenen der PDF-Viewer dann darstellen kann, ist nochmal eine andere Frage.

von meep.meep » Do 8. Apr 2010, 15:47

Hi,

ich hab mal über dein Problem drübergeschaut und vremute Folgendes:

Bezüglich der Lesezeichen: Mit dem Befehl \setcounter{tocdepth}{6} wurden bei mir alle Ebenen bis auf die letzte angezeigt.

Die Fehlermeldung bzgl. Ebene 7 kommt wohl daher, dass latex meines Wissens nur die Ebenen -1, 0, 1, 2, 3, 4, 5 (part bis subparagraph) kennt. Hier wäre mein Vorschlag, für die erste Gliederungesebene \part{part} zu benutzen und somit quasi jede Ebene um 1 hochzustufen. Diese Lösung habe ich aber nicht getestet.

Gruß, Anja

Bookmarks hyperref: Gliederungsebenen nicht richtig

von IrenaSekuta » Mi 31. Mär 2010, 14:59

Hallo zusammen,

ich benutze in meinem Dokument sieben, nummerierte Gleiderungsebenen. Doch leider bekomme die richtige Erstellung (Gliederung) der Lesezeichen in der Lesezeichenleiste hin.

Hier ein das Problem zeigendes Minimalbeispiel:
\documentclass[ngerman]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{hyperref}
\hypersetup{%
	bookmarksopen=true,
	bookmarksopenlevel=9,
	bookmarksnumbered=true}

\makeatletter
% Paragraph umdefinieren
\renewcommand{\paragraph}{%
	\@startsection{paragraph}{4}{0pt}%
	{-3.25ex plus -1ex minus -.2ex}{1.5ex plus .2ex}%
	{\raggedsection\normalfont\sectfont\nobreak\size@paragraph}%
}

% Subparagraph umdefinieren
\renewcommand{\subparagraph}{%
	\@startsection{subparagraph}{5}{0pt}%
	{-3.25ex plus -1ex minus -.2ex}{1.5ex plus .2ex}%
	{\raggedsection\normalfont\sectfont\nobreak\size@subparagraph}%
}

% Neue Ebene erstellen
\newcounter{subsubparagraph}[subparagraph]
\newkomafont{subsubparagraph}{}
\renewcommand{\thesubsubparagraph}{\thesubparagraph.\arabic{subsubparagraph}}
\newcommand{\subsubparagraph}{%
	\@startsection{subsubparagraph}{7}{0pt}%
	{-3.25ex plus -1ex minus -.2ex}{1.5ex plus .2ex}%
	{\raggedsection\normalfont\sectfont\nobreak\usekomafont{subsubparagraph}}%
}
\newcommand{\l@subsubparagraph}{\bprot@dottedtocline{6}{14em}{7em}}
\newcommand{\subsubparagraphmark}[1]{} % wichtig, siehe LaTeX-Kernel 
\makeatother

% KOMA-Script
\setcounter{secnumdepth}{7}	% Nummerierungstiefe Überschriften

% HYPERREF-Paket
\AtBeginDocument{
\renewcommand{\theHsection}{\theHchapter.\arabic{section}}
\renewcommand{\theHsubsection}{\theHchapter.\theHsection.\arabic{subsection}}
\renewcommand{\theHsubsubsection}{\theHchapter.\theHsection.\theHsubsection.\arabic{subsubsection}}
\renewcommand{\theHparagraph}{\theHchapter.\theHsection.\theHsubsection.\theHsubsubsection.\arabic{paragraph}}
\renewcommand{\theHsubparagraph}{\theHchapter.\theHsection.\theHsubsection.\theHsubsubsection.\theHparagraph.\arabic{subparagraph}}
\renewcommand{\theHsubsubparagraph}{\theHchapter.\theHsection.\theHsubsection.\theHsubsubsection.\theHparagraph.\theHsubparagraph.\arabic{subsubparagraph}}
}


\begin{document}
\chapter{Ebene1: chapter}
\blindtext
\section{Ebene 2: section}
\blindtext
\subsection{Ebene 3: subsection}
\blindtext
\subsubsection{Ebene 4: subsubsection}
\blindtext
\paragraph{Ebene 5: paragraph}
\blindtext
\subparagraph{Ebene 6: subparagraph}
\blindtext
\subsubparagraph{Ebene 7: subsubparagraph}
\blindtext
\end{document}
Die Ebenen 4, 5 und 6 werden gar nicht als Lesezeichen gesetzt und die Ebene 7 wird in die erste Lesezeichenebene eingegliedert.

Zumindest bei der 7 Ebene kommt der Hinweis beim Kompilieren: bookmark level to unknown subsubparagraph defaults to 0.

Wie mache ich den dem hyperref die von mir erstelle Ebene denn bekanntß

Eventuell kann jemand helfen.

Gruß,

Irena

Nach oben