PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Formatierung von section anpassen



Darion
30-09-2008, 17:07
Hallo,
ich habe den \section Befehl neu definiert, wodurch die Schritart meines Dokuments auch im Titel der Section respektiert wird. Dies passt jedoch nicht mit \chapter und \subsection zusammen, wo wohl die Standardschriftart und 10 Punkt als Basis verwendet werden. Kann ich irgendwie dafür sorgen, dass auch der Section Befehl das wieder kann? Ansonsten scheint meine Neudefinition auch den Befehl \rightmark von scrpage2 zu zerstören.

Wenn es eine einfachere Möglichkeit gibt, dafür zu sorgen dass statt
1. Einleitung
Abschnitt 1: Einleitung
da steht, ohne dass \subsection beeinflusst wird, wär das auch toll. Natürlich ebenso, wenn's einfachere Möglichkeiten gibt, an Linien unter dem Titel zu kommen.

Wen es interessiert, hier der Code:



%http://zoonek.free.fr/LaTeX/LaTeX_samples_section/0.html
\makeatletter
\def\section{\@ifstar\unnumberedsection\numberedse ction}
\def\numberedsection{\@ifnextchar[%]
\numberedsectionwithtwoarguments\numberedsectionwi thoneargument}
\def\unnumberedsection{\@ifnextchar[%]
\unnumberedsectionwithtwoarguments\unnumberedsecti onwithoneargument}
\def\numberedsectionwithoneargument#1{\numberedsec tionwithtwoarguments[#1]{#1}}
\def\unnumberedsectionwithoneargument#1{\unnumbere dsectionwithtwoarguments[#1]{#1}}
\def\numberedsectionwithtwoarguments[#1]#2{%
\ifhmode\par\fi
\removelastskip
\vskip 3ex\goodbreak
\refstepcounter{section}%
\begingroup
\noindent
\leavevmode\Large\bfseries\raggedright
Abschnitt \thesection: #2\par\nobreak
\endgroup
\noindent\hrulefill\nobreak
\vskip 2ex\nobreak
\addcontentsline{toc}{section}{%
\protect\numberline{\thesection}%
#1}%
}
\def\unnumberedsectionwithtwoarguments[#1]#2{%
\ifhmode\par\fi
\removelastskip
\vskip 3ex\goodbreak
% \refstepcounter{section}%
\begingroup
\noindent
\leavevmode\Large\bfseries\raggedright
% \thesection\
#2\par\nobreak
\endgroup
\noindent\hrulefill\nobreak
\vskip 2ex\nobreak
\addcontentsline{toc}{section}{%
% \protect\numberline{\thesection}%
#1}%
}
\makeatother

Stefan_K
30-09-2008, 17:26
Hallo Darion,

in einem früheren Beitrag las ich, dass Du scrreprt verwendetest. Da Du hier scrpage2 einsetzt, liegt die Vermutung nahe, dass Du auch hierbei eine KOMA-Klasse verwendest. Diese Klassen bieten Befehle zur Beeinflussung der Schrift der verschiedenen Überschriften, schau dazu nach \setkomafont und \addtokomafont in der KOMA-Script-Dokumentation (http://www.ctan.org/get/macros/latex/contrib/koma-script/scrguide.pdf).

Zur Anpassung von Gliederungsüberschriften eignet sich übrigens titlesec (http://ctan.org/pkg/titlesec) sehr gut, es baut allerdings auf den Standardklassen auf, was die Verwendbarkeit mit KOMA-Klassen einschränken kann.

Viele Grüße,

Stefan

Darion
01-10-2008, 11:05
Danke für die Antwort. Der folgende Code hat auch mit scrpage2 wunderbar funktioniert. Die Neudefinition von Section macht mir das gewünschte Aussehen, die Neudefinition von Subsection sorgt dafür, dass auch die Subsections den gleichen Font verwenden. Offenbar hat mir ein anderes Paket unerwünschterweise beide Befehle überschrieben (ich habe \usepackage[Sonny]{fncychap} im Verdacht), was nur zum Vorschein kam, nachdem ich Section nochmals überschrieben hatte...

\usepackage{titlesec}
\titleformat{\section}[hang]{\Large\bfseries}{Abschnitt \thesection: }{.5 em}{}[\titlerule\vspace{1ex}]
\titleformat{\subsection}[hang]{\large\bfseries}{\thesubsection}{.5 em}{}

PS: Ja, ich verwende immer noch
\documentclass[12pt, a4paper, pdftex,twoside,openright,cleardoubleplain,pointles snumbers]{scrreprt}

Darion
01-10-2008, 11:39
Noch eine Anmerkung für Leute, die auch ihre Titel formatieren wollen: Mit diesem Paket ist es mir auch gelungen, sehr leicht auf fncychap zu verzichten. Der komplette Code lautet nun:

\usepackage{titlesec}
\titleformat{\chapter}[display]{\usekomafont{chapter}\bfseries\raggedleft}{\vspac e{-3em} KAPITEL \thechapter \vspace{1.5em}}{.5 em}{\vspace{-1em} \titlerule \vspace{.5em}}[\vspace{.5em} \titlerule]
\titleformat{\section}[hang]{\Large\bfseries}{Abschnitt \thesection: }{.5 em}{}[\titlerule\vspace{1ex}]
\titleformat{\subsection}[hang]{\large\bfseries}{\thesubsection}{.5 em}{}