Anzeige:
Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 15 von 47

Thema: Daumenindex chapterthumbs Daumenregister

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.09.2006
    Beiträge
    361

    Daumenindex chapterthumbs Daumenregister

    Hallo liebes LaTeX-Forum,

    mich macht gerade ein Problem total fertig und ich komme einfach nicht mehr weiter!

    Hier wird beschrieben wie man einen Daumenindex erstellen kann und schon hier komme ich leider nicht weiter
    Ich möchte es gar nicht als chapterthumb.sty mit \usepackage{chapterthumb} einbinden, sonder lieber in meinen Latex Header einbauen, aber wie mache ich das???
    Und daran bin ich kläglich gescheitert
    Wenn ich erst mal so weit bin, hoffe ich, das ich weiterkomme.

    \usepackage{thumb} gibt es wohl nicht in meiner Distribution und auch wenn ich installiere, benötigt es wohl fancyhdr (?), jedenfalls öffnet die Fehlermeldung fancyhdr.sty, obwohl ich scrpage2 verwende und ich es dann sowieso inkompatibel ist - soweit ich weiß.

    Noch mal zu meiner Frage: Wie kann ich Hier in meinen header einbauen, damit es läuft?

    Liebe Grüße und besten Dank!
    ElGato
    Ubuntu 14.04 LTS, Texstudio 2.6, TeX Live 2014 (manuell installiert)

  2. #2
    Registrierter Benutzer
    Registriert seit
    05.09.2006
    Beiträge
    361
    Ich bin nun so weit gekommen, aber was ich nun nicht schaffe ist die Verwendung



    Code:
    % chpaterthumbs
    \newcounter{chapterthumb}
    \newcounter{oldchapterthumb}%
    \setcounter{chapterthumb}{0}%
    \setcounter{oldchapterthumb}{0}%
    \newcommand*{\putchapterthumb}{%
    \begingroup%
    % if a new chapter started increment value of chapterthumb counter
    \ifthenelse{\value{chapter} > \value{oldchapterthumb}}{%
    \addtocounter{chapterthumb}{1}%
    \setcounter{oldchapterthumb}{\value{chapter}}%
    }{
    \ifthenelse{\value{chapter} \addtocounter{chapterthumb}{1}%
    \setcounter{oldchapterthumb}{\value{chapter}}%
    }{}}%
    \makebox[0pt][l]{%
    \hspace{-\oddsidemargin}%\hspace{-1in}}% maybe this has to be adapted according to your
    % \hoffset setting for having the chapter thumbs at the outmost right border
    \hspace{-\@oddheadshift}%
    \hspace{\paperwidth}%
    \parbox[t][0pt][t]{0pt}{%
    \vspace{-\topmargin}%
    \vspace{-0.2in}%normally -1in, maybe this has to be adapted according to
    % your \voffset setting for starting the chapter thumbs at the top of the page
    \vspace{-\headheight}%
    \vspace{\dp\strutbox}%
    \vspace{\firstchapterthumbskip}%
    \setlength{\@tempdima}{\paperheight}%
    \addtolength{\@tempdima}{-\chapterthumbwidth}%
    \addtolength{\@tempdima}{1pt}%
    \setlength{\@tempdimb}{\chapterthumbskip}%
    \divide\@tempdima by\@tempdimb%
    \@tempcnta=\@tempdima%
    \advance\@tempcnta by 1%
    \@tempcntb=\value{chapterthumb}%
    \advance\@tempcntb by -1%
    \divide\@tempcntb by \@tempcnta%
    \multiply\@tempcntb by -\@tempcnta%
    \advance\@tempcntb by \value{chapterthumb}%
    \advance\@tempcntb by -1%
    \setlength{\@tempdima}{\chapterthumbskip}%
    \vspace{\@tempcntb\@tempdima}%
    \makebox[0pt][r]{%
    \rotatebox{90}{%
    \colorbox{\chapterthumbboxcolor}{%
    \parbox[t][\chapterthumbheight][c]%
    {\chapterthumbwidth}{%
    \centering%
    \color{\chapterthumbcolor}%
    \chapterthumbfont{\chapterthumbformat}}}}}%
    }%
    }%
    \endgroup%
    }%
    \makeatletter
    \newcommand*{\firstchapterthumbskip}{0pt}%to move first chapter thumb down change this
    \newcommand*{\chapterthumbheight}{2em}%height of chapter thumbs
    \newcommand*{\chapterthumbwidth}{.2\paperheight}%width of chapter thumbs
    \newcommand*{\chapterthumbskip}{.1\paperheight}%distance between chapter thumbs
    \newcommand*{\chapterthumbboxcolor}{black}%
    \newcommand*{\chapterthumbcolor}{white}%
    \newcommand*{\chapterthumbformat}{\@chapapp~\thechapter}%content of the chapter thumbs
    \newcommand*{\chapterthumbfont}{\normalfont\Large\sffamily}%
    % \newcommand*{\scr@fnt@chapterthumb}{\chapterthumbfont}%
    \makeatother
    
    \usepackage[automark,clines]{scrpage2} % Kopf- Fußzeilen
    \pagestyle{scrheadings}
    
    \automark[section]{chapter}	% Kopfzeile besteht aus dem Kapitelnamen links, Abschnittnamen rechts wenn [section]{chapter}
    \lehead[]{\pagemark \hspace{2em}  \headmark}% Seitennummer oben außen, Kapitelname daneben
    \rohead[]{\headmark \hspace{2em} \pagemark}% Seitennummer oben außen, Kapitelname daneben mit 1,5em Abstand
    \ifoot[]{}
    \cfoot[]{}
    \ofoot[]{}
    
    \renewcommand{\headfont}{\sf\small} % Kopfzeilenformatierung (Kapitel, Abschnitt...)
    \renewcommand{\pnumfont}{\sf\small}	% Schriftart der Seitenzahl
    Ubuntu 14.04 LTS, Texstudio 2.6, TeX Live 2014 (manuell installiert)

  3. #3
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Zitat Zitat von ElGato Beitrag anzeigen
    Ich bin nun so weit gekommen, aber was ich nun nicht schaffe ist die Verwendung
    na ja, in dem von Dir gezeigtem Link wurde ja schon einmal nachgehakt...
    und den gebauten \putchapterthumb müsstest Du auch verwenden, wozu Du vermutlich den \makeatletter vor \newcommand*{\putchampterthumb}{% verschieben müsstest, damit die darin verwendeten @-haltigen Befehle auch als solche erkannt werden...
    Was mir dann noch aufgefallen ist:
    Zitat Zitat von ElGato Beitrag anzeigen
    Code:
    \newcommand*{\putchapterthumb}{%
    \begingroup%
    % if a new chapter started increment value of chapterthumb counter
    \ifthenelse{\value{chapter} > \value{oldchapterthumb}}{%
    \addtocounter{chapterthumb}{1}%
    \setcounter{oldchapterthumb}{\value{chapter}}%
    }{
    \ifthenelse{\value{chapter} \addtocounter{chapterthumb}{1}%
    \setcounter{oldchapterthumb}{\value{chapter}}%
    }{}}%
    (..)
    der hier rot hervorgehobene Code stellt noch die Bedingung für den davorstehenden \ifthenelse dar.
    ...und dann hab ich mich gefragt, wie ich das Problem angehen würde...
    Code:
    \documentclass[ngerman]{scrbook}
    \usepackage[utf8]{inputenc}
    \usepackage{babel,blindtext,color,scrpage2,eso-pic}
    \pagestyle{scrheadings}
    %%%
    %chaptered thumbs:
    %%%
    \newcounter{chtchap}%eigenen Zähler nutzen, damit \appendix o. ä. die Position der Thumbs nicht wieder nach oben schiebt
    \newcounter{chtchg}[chapter]% bei neuem Kapitel wird dieser Zähler zurückgesetzt
    \setcounter{chtchg}{1}%also initial !=0 setzen
    \setcounter{chtchap}{-1}%damit am Anfang noch keine Thumbs generiert werden
    \newlength\chtheight% die Höhe der Box
    \newlength\chtwidth% die Breite der Box
    \newlength\chtypos% die vertikale Position der Box
    \newlength\chtoffs% der Versatz, um den die Box nach unten geschoben werden soll
    \setlength{\chtoffs}{0.05\paperheight}
    \setlength{\chtheight}{0.1\paperheight}
    \setlength{\chtwidth}{3em}
    \definecolor{chtbg}{rgb}{0.5,0.9,0.7}%Hintergrund
    \definecolor{chtfg}{rgb}{0.9,0.2,0.5}%Vordergrund
    \newcommand\chtcontents{\Huge\thechapter}
    \newcommand\chthumbbox{%
      \ifnum\value{chtchg}=0 % neues Kapitel?
        \stepcounter{chtchg}%
        \stepcounter{chtchap}%
      \fi
      \ifnum\value{chtchap}>-1%erst ab dem ersten nummerierten Kapitel...
        \setlength{\chtypos}{\chtoffs}%
        \multiply\chtypos by \value{chtchap}% n Kapitel x Offset...
        \addtolength{\chtypos}{\chtheight}%plus Höhe der Box
        \parbox[b][\chtypos][b]{\chtwidth}{%
          \setlength{\fboxsep}{0pt}
          \colorbox{chtbg}{%
            \parbox[b][\chtheight][c]{\chtwidth}{\centering\color{chtfg}\chtcontents}%
          }%outer parbox
        }%colorbox
      \else\relax%vielleicht nicht notwendig
      \fi%
    }%\chthumbbox
    \newcommand{\leftchthumbs}{%
    %adaptiert aus wallpaper: \ThisULCornerWallPaper praktisch ohne Bild;-)
      \AddToShipoutPicture*{%
        \AtPageLowerLeft{%
          \parbox[b][\paperheight]{2\chtwidth}{%
            \chthumbbox%
            \vfill%
          }%
        }%
      }%
    }%\leftchthumbs f. zweiseitiges Layout
    \newcommand{\rightchthumbs}{%
    %adaptiert aus wallpaper: \ThisURCornerWallPaper
      \AddToShipoutPicture*{%
        \AtPageLowerLeft{%
          \parbox[b][\paperheight]{\paperwidth}{%
            \hfill\chthumbbox%
            \vfill%
          }%
        }%
      }%
    }%\leftchthumbs f. zweiseitiges Layout
    \newcommand\demochap[2][12]{%nur zur Demo
      \chapter{#2}
      \blindtext[#1]
    }
    \lefoot{\leftchthumbs}
    \rofoot[\rightchthumbs]{\rightchthumbs}
    \begin{document}
    \chapter*{Vorwort}
    \blindtext
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \demochap{foo}
    \demochap{bar}
    \appendix
    \demochap{foo -- Appendix}
    \demochap{bar -- Appendix}
    \demochap{blubb -- Appendix}
    \end{document}
    das ist dabei herausgekommen;-)

    Sollte sowohl mit latex, als auch pdflatex funktionierten, solange Du keine \rotatebox o. ä. in \chtcontents verwendest -- und es sollte ziemlich egal sein, ob Du fancyhdr oder scrpage2 verwendest, solange Du die entsprechenden Befehle dazu anpasst.

    Naja und für die Farben fällt Dir bstimmt eine passendere Kombination ein.

    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  4. #4
    Registrierter Benutzer
    Registriert seit
    22.02.2008
    Beiträge
    88

    Weiterführende Fragen

    Moin,

    zunächst mal vielen Dank, daß ihr euch schon so ausgiebig mit dem Thema befasst habt, das war schon eine große Hilfe für mich.
    Trotzdem habe ich einige Fragen, die an den geposteten Code von Rais anknüpfen.

    Du schreibst:
    "Sollte sowohl mit latex, als auch pdflatex funktionierten, solange Du keine \rotatebox o. ä. in \chtcontents verwendest -- und es sollte ziemlich egal sein, ob Du fancyhdr oder scrpage2 verwendest, solange Du die entsprechenden Befehle dazu anpasst."

    Nun arbeite ich nicht mit KOMA-Script und möchte gerne fancyhdr verwenden. Mein Buchlayout ist ansonsten bereits fertig und ich müßte dann weniger neu machen.
    Was muß ich genau an dem Code ändern, damit er mit fancyhdr läuft?

    Die zweite Frage betrifft die angesprochene \rotatebox - eine solche würde ich gerne verwenden, denn ich möchte nicht die Kapitelnummer, sondern den Kapitelnamen dort abdrucken - und zwar hochkant!

    Daran anschließend wäre dann meine Frage, wie ich das Abdrucken der Chapternummer (wie es ja jetzt ist) durch den Titel ersetzen kann.

    Und ebenfalls wichtig: auf den Startseiten der Kapitel soll KEIN Abdruck erfolgen. Das müßte irgendwie noch hinzugefügt werden...

    Besten Dank im Voraus!
    Geändert von TEX-er (22-02-2008 um 04:25 Uhr)

  5. #5
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Hallo und Herzlich Willkommen
    Zitat Zitat von TEX-er Beitrag anzeigen
    Was muß ich genau an dem Code ändern, damit er mit fancyhdr läuft?
    scrpage2 durch fancyhdr ersetzen, entsprechend \pagestyle{fancy} statt \pagestyle{scrheadings} deklarieren und die Befehle \lefoot, \rofoot durch \fancyfoot[LE] bzw. \fancyfoot[RO] ersetzen (oder in der fancyhdr-Doku schauen, ob's die Befehle da auch so gibt;-)
    Zitat Zitat von TEX-er Beitrag anzeigen
    Die zweite Frage betrifft die angesprochene \rotatebox - eine solche würde ich gerne verwenden, denn ich möchte nicht die Kapitelnummer, sondern den Kapitelnamen dort abdrucken - und zwar hochkant!
    Soll der Text "von außen" lesbar sein? Dann müsste der Kram doch nochmal erweitert werden, damit auf geraden Seiten der Inhalt z. B. um 270° gedreht werden kann, auf ungeraden Seiten aber nur um 90°; ansonsten kannst Du natürlich eine \rotatebox innerhalb dieses \chtcontents-Befehls verwenden -- sei Dir lediglich bewußt, daß gedrehter Text nicht von jedem DVI-Betratchter unterstützt wird: schau Dir also nur das entsprechende Endergebnis (PS bzw PDF) an.
    Zitat Zitat von TEX-er Beitrag anzeigen
    Daran anschließend wäre dann meine Frage, wie ich das Abdrucken der Chapternummer (wie es ja jetzt ist) durch den Titel ersetzen kann.
    Den kompletten Titel kannst Du mit \leftmark einsetzen. Da Dir das sicherlich zuviel für die kleine Box ist, kannst Du auch so etwas wie
    Code:
    \newcommand\myleftmark{}
    \let\orgchaptermark\chaptermark
    \renewcommand\chaptermark[1]{%
      \renewcommand\myleftmark{#1}%
      \orgchaptermark{#1}}
    in Deiner Präambel definieren, dann hast Du in \myleftmark nur den Titel.
    Nun könntest Du dabeigehen und \chtcontents z. B. so
    Code:
    \newcommand\chtcontents{\rotatebox{90}{\parbox[c]{\chtheight}{\centering\myleftmark}}}
    definieren, achte aber darauf, _kurze_ Kapitelüberschriften zu wählen (bzw. \chapter[kurz]{lang} zu deklarieren) ... oder spiele ein wenig mit den verwendeten Längen für Boxhöhe und -position herum.
    Zitat Zitat von TEX-er Beitrag anzeigen
    Und ebenfalls wichtig: auf den Startseiten der Kapitel soll KEIN Abdruck erfolgen. Das müßte irgendwie noch hinzugefügt werden...
    Im Gegenteil, dazu brauchst Du nur was wegzulassen;-)
    Code:
    \rofoot[\rightchthumbs]{\rightchthumbs}
    aber dafür schreibst Du vermutlich eh
    Code:
    \fancyfoot[RO]{\rightchthumbs}
    MfG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  6. #6
    Registrierter Benutzer
    Registriert seit
    22.02.2008
    Beiträge
    88

    Danke!

    Besten Dank für die schnelle Antwort,
    ich werde damit mal herumbasteln.

  7. #7
    Registrierter Benutzer
    Registriert seit
    29.04.2008
    Beiträge
    47
    @ rais: Wie kann ich einen Versatz von oben einstellen?

    Ich habe gefunden wo und wie man die Höhe der Boxen einstellt, Wo man der Versatz von Box zu Box einstellt, und auch die Schriftgröße. Aber ich habe in meinem Buch nur 5 Kapitel. Und da wäre es schön, wenn man die erste Box nicht an der oberen Buchkante beginnt, sondern weiter unten.

  8. #8
    Registrierter Benutzer
    Registriert seit
    22.02.2008
    Beiträge
    88
    Ganz einfach. Was bei diesen Chapterthumps passiert, ist ja, dass eine Box am Seitenrand platziert wird. Der Abstand von der oberen Kante ist dabei dann normalerweise ((Kapitelnummer-1)*ein fester Abstand), damit bei Kapitel 1 die Box oben ansetzt.
    Soll die erste Box weiter unten beginnen (was ich aus optischen Gründen NIEMALS machen würde, aber Du hast ja danach gefragt und wirst schon wissen, was Du tust...), so musst Du einfach nur bei z.B. (Kapitelnummer+3) beginnen lassen. Einfach mal ausprobieren...

  9. #9
    Registrierter Benutzer
    Registriert seit
    29.04.2008
    Beiträge
    47
    Ah, danke, ich werde das gleich mal testen.

    Da ich nur 5 Kapitel habe, würde ich die Seitenhöhe in 5 Bereiche unterteilen und die Kästen jeweils in die Mitte des Bereiches platzieren. Oder im oberen Drittel anfangen und im unteren Drittel aufhören, oder so.

    Ich gebe gleich ein Feedback …

  10. #10
    Registrierter Benutzer
    Registriert seit
    22.02.2008
    Beiträge
    88
    Ich mag es zwar auch nicht, wenn mir bei einer Frage andere Forenmitglieder einen Ratschlag erteilen, der mit der eigentlichen Frage nichts zu tun hat, aber:
    meinst Du nicht, dass es sinnvoller wäre, die Seitenhöhe in 5 Bereiche zu unterteilen (was Du ja machen möchtest) und die Kästen dann auch jeweils so groß zu machen wie diese Bereiche?

  11. #11
    Registrierter Benutzer
    Registriert seit
    29.04.2008
    Beiträge
    47
    Ich habe nichts gegen Ratschläge – ganz im Gegenteil!
    Aber das hatte ich auch schon geprüft, doch es sieht nicht sehr gut aus wenn ich so dicke schwarze Balken an den Seitenrand mache. Ich habe nämlich ein A5-Format. Jetzt habe ich die Größe der Zahlen auf \Large reduziert, und die Höhe auf etwa 300 % der Zahlen. Die Breite der Box habe ich auf 2em reduziert. Doch nun sind die Kästen sehr weit auseinander.

    Ich finde die Stelle wo ich das ändern soll nicht. Kannst Du das aus dem obigen Code-Beispiel von rais nehmen?

  12. #12
    Registrierter Benutzer
    Registriert seit
    29.04.2008
    Beiträge
    47
    … und ich sehe gerade, dass ich meine Seitenzahlen verloren habe.

  13. #13
    Registrierter Benutzer
    Registriert seit
    22.02.2008
    Beiträge
    88
    Hab Dir mal ne PN gesendet...

  14. #14
    Registrierter Benutzer
    Registriert seit
    29.04.2008
    Beiträge
    47
    @ TEX-er: Danke noch mal für Deine Hilfe.

    Aber: Durch den Daumen-Index ist ja die Seitenzahl verschwunden, und mit den von Dir genannten Befehlen habe ich sie zwar zurückerhalten, aber erstens in Italic statt Plain, und zweitens zu dicht an der Linie dran. Ob man das auch noch lösen kann?


  15. #15
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Moin moin,
    Zitat Zitat von Uhlhorn Beitrag anzeigen
    Aber: Durch den Daumen-Index ist ja die Seitenzahl verschwunden, und mit den von Dir genannten Befehlen habe ich sie zwar zurückerhalten, aber erstens in Italic statt Plain, und zweitens zu dicht an der Linie dran. Ob man das auch noch lösen kann?
    tu einfach mal so, als hätte hier niemand eine Ahnung, was TEX-er und Du so zusammengewurschtelt haben ...
    BTW: wenn ich einen \pagemark in meinem MB ergänze, stellt sich mir dieses Dein Problem gar nicht erst.
    Siehe vllt http://www.minimalbeispiel.de
    MfG
    Rainer
    There's nothing a good whack with a hammer won't fix!

Lesezeichen

Berechtigungen

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