Anzeige:
Ergebnis 1 bis 6 von 6

Thema: ifthenelse - Normales Kapitel, Anhang oder sonst

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.12.2011
    Beiträge
    42

    ifthenelse - Normales Kapitel, Anhang oder sonst

    Hallo Miteinander,


    Ist es möglich zu testen, ob man sich gerade in einem normalen Kapitel oder im Anhang befindet?
    Dies würde ich gerne wissen, um meine Kopf-Zeilen anzupassen.

    Hier ein Minimalbeispiel:

    Code:
    \documentclass
    [
    	a4paper,
      	11pt,
      	notitlepage,
    	twoside = true,
     	onecolumn,
      	headsepline,
      	footsepline,
      	chapterprefix,
    	numbers = noenddot,
    ]{scrreprt}
    \usepackage[english]{babel}
    
    \usepackage{fancyhdr}
    \usepackage{ifthen}
    
    \begin{document}
    
    	% Header Preferences
    
    	\pagestyle{headings}
    
    	\fancypagestyle{plain}{
    		\fancyhf{}
    		\fancyhead[LE, RO]{\ifthenelse{\equal{\chaptername}{Appendix}}{Appendix - Plain Style}{\ifthenelse{\thechapter=0}{Zero Chapter - Plain Style}{\chaptername \ \thechapter}}}
    	}
    
    	\fancypagestyle{empty}{
    		\fancyhf{}
    		\fancyhead[LE, RO]{\ifthenelse{\equal{\chaptername}{Appendix}}{Appendix - Empty Style}{\ifthenelse{\thechapter=0}{Zero Chapter - Empty Style}{\chaptername \ \thechapter}}}
    	}
    
    	\pagestyle{fancy}
    	\fancyhf{}
    	\fancyhead[LE, RO]{\ifthenelse{\equal{\chaptername}{Appendix}}{Appendix - Fancy Style}{\ifthenelse{\thechapter=0}{Zero Chapter - Fancy Style}{\chaptername \ \thechapter}}}
    
    	% Title Page
    	\begin{titlepage}
    		Title page.
    	\end{titlepage}
    
    	% TOC, LOF, LOT
    	\cleardoublepage
    	\newpage
    	\tableofcontents
    	\listoffigures
    	\listoftables
    
    	% Chapters
    	\newpage
    	\cleardoublepage
    	\newpage
    	\chapter{First Chapter}
    	Text chapter 1.
    	\chapter{Second Chapter}
    	Text chapter 2.
    	
    	% Appendices
    	\newpage
    	\appendix
    	\chapter{First Appendix}
    	Text appendix 1.
    	\chapter{Second Appendix}
    	Text appendix 2.
    
    \end{document}
    Die Frage bezieht sich auf den rot/fett markierten Text.
    Code:
    \equal{\chaptername}{Appendix}
    scheint aber nicht so zu funktionieren.
    Der Eintrag http://tex.stackexchange.com/questio...dix-or-chapter konnte mir auch nicht helfen.


    Besten Dank im Voraus,
    Grüsse

  2. #2
    Registrierter Benutzer Avatar von cgnieder
    Registriert seit
    06.04.2011
    Ort
    Herrenberg
    Beiträge
    254
    \appendix definiert \chaptername nicht um, der Test ist also immer falsch. Du kannst allerdings darauf testen, ob \@chapapp \appendixname enthält:

    Code:
    \documentclass
    [
    a4paper,
      11pt,
      notitlepage,
    twoside = true,
     onecolumn,
      headsepline,
      footsepline,
      chapterprefix,
    numbers = noenddot,
    ]{scrreprt}
    \usepackage[english]{babel}
    
    \usepackage{fancyhdr}
    % \usepackage{ifthen}
    
    \begin{document}
    
    % Header Preferences
    \makeatletter
    \newcommand*\myfancyheading[1]{%
      \expandafter\ifx\@chapapp\appendixname
        Appendix -- #1 Style%
      \else
        \ifnum\arabic{chapter}=0
          Zero Chapter -- #1 Style%
        \else
          \chaptername\ \thechapter
        \fi
      \fi
    }
    \makeatother
    \pagestyle{headings}
    
    \fancypagestyle{plain}{
    \fancyhf{}
    \fancyhead[LE, RO]{\myfancyheading{Plain}}
    }
    
    \fancypagestyle{empty}{
    \fancyhf{}
    \fancyhead[LE, RO]{\myfancyheading{Empty}}
    }
    
    \pagestyle{fancy}
    \fancyhf{}
    \fancyhead[LE, RO]{\myfancyheading{Fancy}}
    
    % Title Page
    \begin{titlepage}
    Title page.
    \end{titlepage}
    
    % TOC, LOF, LOT
    \cleardoublepage
    \newpage
    \tableofcontents
    \listoffigures
    \listoftables
    
    % Chapters
    \newpage
    \cleardoublepage
    \newpage
    \chapter{First Chapter}
    Text chapter 1.
    \chapter{Second Chapter}
    Text chapter 2.
    
    % Appendices
    \newpage
    \appendix
    \chapter{First Appendix}
    Text appendix 1.
    \chapter{Second Appendix}
    Text appendix 2.
    
    \end{document}
    Grüße
    Clemens

  3. #3
    Registrierter Benutzer
    Registriert seit
    05.12.2011
    Beiträge
    42
    Hallo Clemens,

    Besten Dank! Funktioniert alles super.
    Leider steige ich in der Programmierung noch nicht durch, deshalb eine zusätzliche Frage:
    Wäre es zusätzlich (z.B. unter \ifnum\arabic{chapter}=0 ) möglich zu prüfen, ob man sich auf der Titlepage, im Table of Contents, List of Figures oder List of Tables befindet?

    Nochmals besten Dank im Voraus,
    Grüsse

  4. #4
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Wäre es zusätzlich (z.B. unter \ifnum\arabic{chapter}=0 ) möglich zu prüfen, ob man sich auf der Titlepage, im Table of Contents, List of Figures oder List of Tables befindet?
    Man kann auf alles mögliche testen, aber wenn du all diese Test wirklich brauchst, ist meiner Ansicht nach irgendwas mit den von dir geplanten Seitenstilen oder mit der Definition des "Hauptstil" nicht wirklich in Ordnung.

  5. #5
    Registrierter Benutzer
    Registriert seit
    05.12.2011
    Beiträge
    42
    Hallo Ulrike,


    Gut möglich, dass bei meinen Stilen etwas nicht stimmt.
    Der Stil ist für einen Bericht für meinen Arbeitgeber bestimmt. Dort wird natürlich Word verwendet, aber für dieses Dokument eignet sich LaTeX viel besser.
    Dabei muss ich aber eine möglichst ähnliche Formatierung wie in den Standard-Dokumenten erreichen, deshalb der Umstand.

    Unter anderem sollten die Headers und Footers auf jeder Seite (inkl. TOC, LOF, Empty Pages, Plain Pages etc.) identisch (bis auf kleine Ausnahmen, deshalb die Tests) sein - gäbe es hierfür eine Möglichkeit, die gemeinsamen Dinge für alle drei Stile (Plain, Heading, Empty) auf einmal zu definieren und nur die abweichenden Bausteine einzeln abzuändern?

    Vielleicht wird es mir deshalb trotzdem verraten, wie man auf Titlepage, TOC, LOF und LOT testen kann?


    Besten Dank
    Grüsse
    Geändert von Thesis (30-07-2012 um 16:30 Uhr) Grund: Erweitert

  6. #6
    Registrierter Benutzer Avatar von cgnieder
    Registriert seit
    06.04.2011
    Ort
    Herrenberg
    Beiträge
    254
    Ich glaube, es wäre einfacher anstatt fancyhdr KOMA-Scripts scrpage2 zu verwenden. Abgesehen davon, dass Du sowieso schon eine KOMA-Script-Klasse verwendest, erlaubt Dir das, die Stile, die Du brauchst, selbst zu definieren. Die Definitionen können dann ja (fast gleich) definiert werden.

    Grüße
    Clemens

Lesezeichen

Berechtigungen

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