Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Optionen für Definition anpassen

  1. #1
    Registrierter Benutzer
    Registriert seit
    28.10.2009
    Beiträge
    23

    Optionen für Definition anpassen

    Hallo,

    ich versuche gerade eine Umgebung für Definitionen anzupassen. Ich verwende das thmbox-Paket. Ich hätte gerne, dass über der Definition "Definition: Begriff" in fett steht ohne Nummerierung. Teilweise wurde ich im Netz fündig. Ich krieg es nur nicht hin, dass der zu definierende Begriff ebenfalls in fett und ohne Klammern da steht. Meine aktuelle Version:

    Code:
    \documentclass[11pt,ngerman,a4paper,]{report}
    \usepackage[ngerman]{babel}
    \usepackage{thmbox}
    \newtheorem[S, bodystyle=\normalfont\noindent]{defi}{Definition:}
    \renewcommand{\thedefi}{\hspace{-0.5em}}
    \begin{document}
    \begin{defi}[Begriff]
    blablabla
    \end{defi}
    \end{document}
    Setze ich titlestyle=\bfseries mit zu den Optionen wird der Begriff gar nicht mehr angezeigt...
    Kann ich eigentlich auch irgendwie in \newtheorem festlegen, dass vor und hinter der Umgebung immer ein bestimmter Abstand zum restlichen Text besteht?

    LG

  2. #2
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Wenn die Änderungen für alle Theoremumgebungen gelten sollen, dann kannst du die Einstellungen einfach mit \thmboxoptions vornehmen:

    Code:
    \documentclass[11pt,ngerman,a4paper]{report}
    \usepackage{babel}
    \usepackage{thmbox}
    
    \thmboxoptions{headstyle=\bfseries\boldmath#1~,titlestyle=\bfseries\boldmath#1}
    \newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}
    
    \begin{document}
    \begin{defi}[Begriff]
      blablabla
    \end{defi}
    \end{document}
    Laut Doku müsste man die Optionen headstyle und titlestyle mit samt der jeweiligen Argumente (#1 bzw. bei headstyle noch #2 für die Nummer) auch im ersten optionalen Argument bei der Theormdefinition verwenden können, so dass die Anpassungen nur für die defi-Umgebung gelten. Das liefert zwar das gewünschte Ergebnis, bringt aber trotzdem eine Fehlermeldung des Paketes.

    Mit dem folgenden Code kann man aber die Anpassungen auch ohne Fehlermeldungen nur für defi vornehmen:

    Code:
    \documentclass[11pt,ngerman,a4paper]{report}
    \usepackage{babel}
    \usepackage{thmbox}
    \usepackage{etoolbox}
    
    \newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}
    \AtBeginEnvironment{defi}{%
      \thmboxoptions{headstyle=\bfseries\boldmath#1~,titlestyle= \bfseries\boldmath#1}}
    
    \newtheorem[S]{satz}{Satz}
    
    \begin{document}
    \begin{defi}[Begriff]
      blablabla
    \end{defi}
    \begin{satz}[Ein Satz]
      blablabla
    \end{satz}
    \end{document}
    Mit den \AtBeginEnvironment und \AfterEndEnvironment aus dem Paket etoolbox kannst du auch Abstände vor und nach defi einfügen:

    Code:
    \usepackage{thmbox}
    \usepackage{etoolbox}
    \newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}
    \AtBeginEnvironment{defi}{%
      \thmboxoptions{headstyle=\bfseries\boldmath#1~,titlestyle=\bfseries\boldmath#1}%
      \par\vspace{\baselineskip}}
    \AfterEndEnvironment{defi}{%
      \par\vspace{\baselineskip}}
    Gruß
    Elke
    Geändert von esdd (03-12-2013 um 15:22 Uhr) Grund: Abstände ergänzt

  3. #3
    Registrierter Benutzer
    Registriert seit
    28.10.2009
    Beiträge
    23
    Super, danke - jetzt kompiliert es und sieht aus wie gewünscht . Hätte aber noch eine Frage, da ich es nur von Kommentaren kenne: Welche Funktion haben die Prozentzeichen am Ende mancher Zeilen?

    LG

  4. #4
    Registrierter Benutzer
    Registriert seit
    28.10.2009
    Beiträge
    23
    Sehe grade, dass jetzt der Text nach der Umgebung eingerückt wird. Mit \noindent wird es zwar weniger eingerückt, aber immernoch ein bißchen. Kann man das unterdrücken?

  5. #5
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Zu den Prozentzeichen am Zeilenende findest du zum Beispiel unter diesem Link Infos.

    Die Einrückung bekommst du weg, wenn das \par am Ende der Umgebung weggelassen wird. Nimm dann also besser nur:

    Code:
    \AfterEndEnvironment{defi}{\vspace{\baselineskip}}
    Gruß
    Elke

  6. #6
    Registrierter Benutzer
    Registriert seit
    28.10.2009
    Beiträge
    23
    Super, klappt. Danke für Deine Hilfe und Erklärungen.

    LG

Lesezeichen

Berechtigungen

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