Absatz nach überschrift

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


Tael
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 8. Jul 2010, 10:47

Absatz nach überschrift

Beitrag von Tael »

Update 26.7.2010

Nachdem Mir schon bei der Preämbel geholfen wurde, bin ich auch auf ein weiteres Problem gestoßen und wollte keinen neuen Thread aufmachen.

Wenn mir also jemand sagen kann wie ich (wie im letzten Post beschrieben) den Abstand eine Überschrift genau festlegen kann (also nicht Maß +1 Zeile so wie es zu sein scheint) wäre ich sehr dankbar.

Alter Post:

Hallo zusammen,

In Vorbereitung auf meine kommende Studienarbeit, versuche ich gerade mir eine Vorlage zusammen zu schustern.
Diese Vorlage muss verschiedene Kriterien meines Instituts erfüllen und ich kann auch leider nicht davon abweichen.

Mein Problem ist, das inzwischen meine Preämbel so riesen groß geworden ist, dass ich a) den Überblick verliere und b) glaube vieles einfacher, effizienter und schöner gemacht werden kann.

Zu erst einmal mein ganzer Code und danach kommen Detailfragen:
\documentclass
[
12pt,%Schriftgröße für Standardtext
twoside, %Zweiseitig (Einseitig mit oneside)
bibliography=totocnumbered %Literaturvz. erscheint im Inhaltsvz. totoc ohne Nummer, totocnumbered mit
]
{scrreprt} %Dokumentenklasse

\usepackage[T1]{fontenc}
%\usepackage[latin1]{inputenc}%werden 2 encoder benötigt??
\usepackage[babel,german=guillemets]{csquotes}%Wird von Biblatex benötigt

%Deutsches Sprachpacket
\usepackage[ngerman]{babel}

%Formelumgebungen
\usepackage{amsmath}
\usepackage{amsfonts}
%Setzt wahrscheinlich die schriftgröße der Matheumgebung
\makeatletter
 \DeclareMathSizes{\@xpt}{\@xpt}{7}{5}
 \DeclareMathSizes{\@xipt}{\@xipt}{7}{5}
 \DeclareMathSizes{\@xiipt}{\@xiipt}{7}{5}
\makeatother

\everymath{\rm} %Inline umgebung auf Roman
\everydisplay{\rm} %Abgesetzte umgebung auf Roman

%Times New Roman
\usepackage{txfonts}

%Seitenzahlen (Kopf Fußzeile etc)
\usepackage{scrpage2} 
\clearscrheadfoot 
\ohead[\pagemark]{ \pagemark} %o=outer
\pagestyle{scrheadings}

%Grafiken in Floats einbinden
\usepackage{graphicx}

%Ränder und Papierformat
\usepackage{geometry}
\geometry{left=2.5cm,right=2.5cm,top=2.5cm,bottom=2cm,paper=a4paper,includefoot}

%Absatzeinstellungen
\setlength{\parindent}{0pt} %Absatz einrücken
\setlength{\parskip}{12pt} %Abstand nach Absatz
\usepackage{setspace}%wird benötigt für den Zeilenabstand 1,3 (Siehe unter Inhaltsverzeichniss!)

%Bildunterschriften anpassen
\usepackage{caption}
\captionsetup%
{%
format=hang,%weitere Zeilen werden rechts von "Bild x.x" angehängt
labelfont=bf,%"Bild x.x" wird Fett
figurename=Bild,%"Abbildung" wird zu "Bild"
figurewithin=chapter,%Bilder werden innerhalb des chapters durchnummeriert
indention=0mm,%Einrücken um x
justification=raggedright,%linksbündig
margin=0mm,%Rand
singlelinecheck=false%wird benötigt damit Einzeilige Unterschriften nicht eingerückt werden
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%sections umdefinieren - Schriftgröße und Abstände vor und danach%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatletter %dazu da das man @ schreiben kann
%\def\section{\@startsection{section}{Level}{Einrücken}{Abstand davor und spezial für Paragraph danach}{Abstand danach}{Schriftgröße und Style}}

\setcounter{secnumdepth}{4} %Bis zu welchem Level nummeriert

\def\chapter{\@startsection{chapter}{0}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{16pt}{0pt}\bf}}
\def\section{\@startsection{section}{1}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{14pt}{0pt}\bf}}
\def\subsection{\@startsection{subsection}{2}{0pt}{-6pt plus -1ex minus 
    -.2ex}{6pt}{\fontsize{12pt}{0pt}\bf}}
\def\subsubsection{\@startsection{subsubsection}{3}{0pt}{-6pt plus -1ex minus 
    -.2ex}{6pt}{\fontsize{12pt}{0pt}\bf}}
\makeatother %schaltet @ wieder aus

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Inhaltsverzeichnis Anpassen%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tocloft}
\setcounter{tocdepth}{5} %Stellt ein bis zu welchem Level im Inhaltsverzeichnis erscheint
%Überschrift
\renewcommand{\cfttoctitlefont}{\fontsize{16pt}{0pt}\bf} %Schriftgröße von "Inhaltsverzeichnis" ändern
\makeatletter
\renewcommand{\@pnumwidth}{0em}%Regelt den Abstand von Punkten zur Seitenzahl standart ist hier 1.55em
\makeatother
\setlength{\cftaftertoctitleskip}{12pt}%Abstand vor "Inhaltsverzeichnis"
\setlength{\cftbeforetoctitleskip}{12pt}%Abstand nach "Inhaltsverzeichnis"


%\renewcommand{\cftdot}{.}
\renewcommand{\cftdotsep}{6}%Regelt den Abstand der Punkte im Inhaltsverzeichnis
%Chapter
\setlength{\cftbeforechapskip}{6pt}

\setlength{\cftchapindent}{0cm}%Einrücken des Eintrags im Ivz
\renewcommand{\cftchapfont}{\fontsize{12pt}{0pt}\bf}%Schriftgröße des Eintrags im Ivz
\renewcommand{\cftchapdotsep}{6}
%Section
\setlength{\cftbeforesecskip}{0pt}
\setlength{\cftsecindent}{0cm}
\renewcommand{\cftsecfont}{\fontsize{12pt}{0pt}}
%Subsection
\setlength{\cftbeforesubsecskip}{0pt}
\setlength{\cftsubsecindent}{0.85cm}
\renewcommand{\cftsubsecfont}{\fontsize{12pt}{0pt}}
%Subsubsection
\setlength{\cftbeforesubsubsecskip}{0pt}
\setlength{\cftsubsubsecindent}{1.27cm}
\renewcommand{\cftsubsubsecfont}{\fontsize{12pt}{0pt}}


%\usepackage[]{sfmath}
%\mathnormal

%%%%%%%%%%
%Biblatex%
%%%%%%%%%%
%Eingefügt aus Biblatex Vorlage
%\usepackage[
%style=ifsw,%bbx und cbx Datei Laden
%sorting=none%Sortierung des Literaturvz. none=so wie im Text zitiert
%]{biblatex}

%\bibliography{test}%Läd die Bibliographie datei mit *.bib


%\DefineBibliographyStrings{ngerman}{bibliography={Literaturverzeichnis}}%Benennt Lit. um


%Dummy Text erzeugen
\usepackage{blindtext}%Kann Dummitext erstellen mit \blindocument oder \blindmathpaper
\DeclareOption{math}{\blindmathtrue}%Einstellung mit unbekannter Wirkung für Blindtext

%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
\begin{document}
\tableofcontents %generiert Ivz
\newpage

\setstretch{1.3} %Zeilenabstand


%\blindmathpaper
\blinddocument


\begin{table}[!htbp]
\begin{center}
\begin{tabular}{|lcr|}
\hline
Farbe   &   Form &   Zahl   \\
Rot       &   Rechteck   &  100     \\
Blau     &   Kreis         &  99       \\
\hline
\end{tabular}
\end{center}
\caption{Sometimes a problem may only occur at a certain place or after a certain point, in which case you may need to create some dummy text to pad out your example. If so, the lipsum package is a useful tool. This provides the command which has an optional argument that specifies the paragraph or the range of paragraphs to typeset.}
\label{tab : beispiel 1}
\end{table}




%\newpage
%\printbibliography

\end{document}
Nun die Detailfragen:
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[babel,german=guillemets]{csquotes}%Wird von Biblatex benötigt

%Deutsches Sprachpacket
\usepackage[ngerman]{babel}
Bei diesen Packeten frage ich mich was genau deren Wirkung ist, ich glaube das ich babel brauche für Umlaute, nun habe ich aber verschiedene Packetoptionen gesehen - "german" und "ngerman" und Diskussionen darüber was denn nun besser sei.
Und zu fontenc und inputenc frage ich mich, ob diese nicht beide das gleiche tun.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%sections umdefinieren - Schriftgröße und Abstände vor und danach%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatletter %dazu da das man @ schreiben kann
%\def\section{\@startsection{section}{Level}{Einrücken}{Abstand davor und spezial für Paragraph danach}{Abstand danach}{Schriftgröße und Style}}

\setcounter{secnumdepth}{4} %Bis zu welchem Level nummeriert

\def\chapter{\@startsection{chapter}{0}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{16pt}{0pt}\bf}}
\def\section{\@startsection{section}{1}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{14pt}{0pt}\bf}}
\def\subsection{\@startsection{subsection}{2}{0pt}{-6pt plus -1ex minus 
    -.2ex}{6pt}{\fontsize{12pt}{0pt}\bf}}
\def\subsubsection{\@startsection{subsubsection}{3}{0pt}{-6pt plus -1ex minus 
    -.2ex}{6pt}{\fontsize{12pt}{0pt}\bf}}
\makeatother %schaltet @ wieder aus
Kann man die Formatierung der Überschriften auch einfacher gestalten?
Ich habe schon secsty und titlesec ausprobiert, aber eine der Vorgaben könnte jeweils nicht erfüllt werden (ich glaube es war das Problem das man nur Abstände danach und nicht davor einstellen kann).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Inhaltsverzeichnis Anpassen%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tocloft}
\setcounter{tocdepth}{5} %Stellt ein bis zu welchem Level im Inhaltsverzeichnis erscheint
%Überschrift
\renewcommand{\cfttoctitlefont}{\fontsize{16pt}{0pt}\bf} %Schriftgröße von "Inhaltsverzeichnis" ändern
\makeatletter
\renewcommand{\@pnumwidth}{0em}%Regelt den Abstand von Punkten zur Seitenzahl standart ist hier 1.55em
\makeatother
\setlength{\cftaftertoctitleskip}{12pt}%Abstand vor "Inhaltsverzeichnis"
\setlength{\cftbeforetoctitleskip}{12pt}%Abstand nach "Inhaltsverzeichnis"


%\renewcommand{\cftdot}{.}
\renewcommand{\cftdotsep}{6}%Regelt den Abstand der Punkte im Inhaltsverzeichnis
%Chapter
\setlength{\cftbeforechapskip}{6pt}

\setlength{\cftchapindent}{0cm}%Einrücken des Eintrags im Ivz
\renewcommand{\cftchapfont}{\fontsize{12pt}{0pt}\bf}%Schriftgröße des Eintrags im Ivz
\renewcommand{\cftchapdotsep}{6}
%Section
\setlength{\cftbeforesecskip}{0pt}
\setlength{\cftsecindent}{0cm}
\renewcommand{\cftsecfont}{\fontsize{12pt}{0pt}}
%Subsection
\setlength{\cftbeforesubsecskip}{0pt}
\setlength{\cftsubsecindent}{0.85cm}
\renewcommand{\cftsubsecfont}{\fontsize{12pt}{0pt}}
%Subsubsection
\setlength{\cftbeforesubsubsecskip}{0pt}
\setlength{\cftsubsubsecindent}{1.27cm}
\renewcommand{\cftsubsubsecfont}{\fontsize{12pt}{0pt}}
Ich brauche einen Abstand von 6pt nach jedem Chaptereintrag im Inhaltsverzeichnis, dummerweise gibt es keinen Befehl wie \ctfafterchapskip - für die Überschrift gibt es das ja!


Ich hoffe ihr könnt mir ein paar Tips für einen Latex-Laien geben.

Schaut auch mal meinen Thread im Literaturvz. Forum an, wo ich ein paar Fragen zu Biblatex gestellt habe.
http://www.golatex.de/viewtopic,p,19709.html#19709

Vielen Dank,
Tael
Zuletzt geändert von Tael am Mo 26. Jul 2010, 09:32, insgesamt 1-mal geändert.

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2500
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Re: Preämbel entschlacken - oder wie mache ich es einfacher

Beitrag von Stefan Kottwitz »

Hallo Tael!
Tael hat geschrieben:Nun die Detailfragen:
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[babel,german=guillemets]{csquotes}%Wird von Biblatex benötigt

%Deutsches Sprachpacket
\usepackage[ngerman]{babel}
Bei diesen Packeten frage ich mich was genau deren Wirkung ist, ich glaube das ich babel brauche für Umlaute, nun habe ich aber verschiedene Packetoptionen gesehen - "german" und "ngerman" und Diskussionen darüber was denn nun besser sei.
Und zu fontenc und inputenc frage ich mich, ob diese nicht beide das gleiche tun.
  • babel ist u.a. für Trennhilfen und Umlaute gut. Die Option ngerman steht für neue deutsche Rechtschreibung, german für die alte.
  • fontenc stellt die Schriftcodierung ein. Standard ist OT1, wo die Umlaute nicht enthalten sind, die müssen daher durch Akzente dargestellt werden, also z.B. statt einem ä wird ein a mit Punkten darüber ausgegeben - sieht genauso aus, eignet sich jedoch nicht für copy&paste oder die Suchfunktion im pdf-Ausgabedokument. Schrift in T1 Codierung hingegen enthält Sonderzeichen wie Umlaute, gut für direktes Suchen mit Umlauten, copy&paste und Trennung von Wörtern mit Umlauten.
  • inputenc betrifft nur die Eingabecodierung, damit Du Umlaute direkt im Quelltext eingeben kannst, statt "{a} oder "a (babel) zu schreiben.
Tael hat geschrieben:
\def\chapter{\@startsection{chapter}{0}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{16pt}{0pt}\bf}}
\def\section{\@startsection{section}{1}{0pt}{-12pt plus -1ex minus 
    -.2ex}{12pt}{\fontsize{14pt}{0pt}\bf}}
Kann man die Formatierung der Überschriften auch einfacher gestalten?
Ich habe schon secsty und titlesec ausprobiert, aber eine der Vorgaben könnte jeweils nicht erfüllt werden (ich glaube es war das Problem das man nur Abstände danach und nicht davor einstellen kann).
Mit titlesec sollte vieles gehen. scrreprt bietet auch schon einige features, bei Kapitel z.B. kannst Du die Abstände durch Redefinieren von \chapterheadstartvskip bzw. \chapterheadendvskip einstellen.
Wenn Du genaue Vorgaben einhalten möchtest, kannst Du ruhig \section etc. redefinieren, jedoch würde ich mich an scrreprt als Ausgangspunkt bei der Redefinition halten, damit KOMA-Features weiter unterstützt werden, wie z.B. einstellbare Schriftart und Größe der Überschrift. In scrreprt sieht \section nämlich so aus:
\newcommand\section{\@startsection{section}{1}{\z@}%
  {-3.5ex \@plus -1ex \@minus -.2ex}%
  {2.3ex \@plus.2ex}%
  {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
    \setlength{\parfillskip}{\z@ plus 1fil}\fi
    \raggedsection\normalfont\sectfont\nobreak\size@section}%
}
Weiterhin sehe ich, dass Du parskip und parindent änderst - vllt. schau Dir die Klassenoptionen parskip, halfparskip und Varianten davon an.

Viele Grüße,

Stefan

Tael
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 8. Jul 2010, 10:47

Beitrag von Tael »

Hallo Stefan,
Vielen dank für die Erklärungen, da hab ich wieder ein wenig mehr verstanden :)

Ich hab da mal ein paar Fragen zu der section definition, ich würde nämlich gern die Argumente verstehn.

Ein paar dinge erschließen sich mir aus der normalen Definition
\newcommand\section{\@startsection{section}{1}{\z@}%
  {-3.5ex \@plus -1ex \@minus -.2ex}%Abstand vor und indent nach Überschrift
  {2.3ex \@plus.2ex}%Absatz nach Überschrift
  {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax%Ich hab keinen Dunst was diese Zeile macht
    \setlength{\parfillskip}{\z@ plus 1fil}\fi%was macht das?
    \raggedsection\normalfont\sectfont\nobreak\size@section}%das riecht nach Formatierung :)
}
Ansich wäre es auch super ohne Umdefinition auszukommen, wenn es auch ohne möglich ist Schriftgröße in pt, Abstand vor und Abstand danach in mm/cm einzustellen.

Zum Thema parskip und parindent:
Ich hab jetzt mal als Klassenoption parskip gesetzt, aber wie groß der jetzt ist kann ich ja leider nicht festlegen.
Bzw. nur in Zeilengrößen, zumindest steht das so in einer pdf die irgendwo bei dante liegt:
http://archiv.dante.de/dante/events/mv29/handouts/Klaus/koma-rauischholzhausen.pdf hat geschrieben:Absatzformate
Standard: Markierung von Absatzanfängen mit Einzug der ersten
Zeile.
KOMA-Script unterstützt aber per Klassenoption auch die
Markierung von Absätzen mit vertikalem Abstand.
parindent Standardverhalten mit Absatzeinzug
parskip
parskip*
parskip+
parskip-
Vertikaler Absatzabstand: eine Zeile,
kein Einzug
halfparskip
halfparskip*
halfparskip+
halfparskip-
Vertikaler Absatzabstand: halbe Zeile,
kein Einzug
25Die skip-Optionen unterscheiden sich dabei im Leerraum, der am
Ende der letzten Zeile eines Absatzes frei bleiben muss:
...skip 1em Leerraum
...skip* Eine Viertel-Zeile Leerraum
...skip+ Eine Drittel-Zeile Leerraum
...skip- Beliebig volle letzte Zeile
und scrguide sagt auch nicht viel mehr dazu :(
Zuletzt geändert von Tael am Mo 12. Jul 2010, 18:45, insgesamt 1-mal geändert.

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2500
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

LaTeX Doku

Beitrag von Stefan Kottwitz »

Hallo Tael,

nützlicherweise bringen TeX-Distributionen auch Dokumentation mit. Versuch mal auf der Kommandozeile:

texdoc source2e

In 61.2 Sectioning findest Du eine Beschreibung der Parameter für \@startsection.

Mit

texdoc scrguide

erhältst Du die KOMA-Script Dokumentation. Das ist eine bessere Referenz als ein pdf aus dem Netz. ;-)

Viele Grüße,

Stefan

Tael
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 8. Jul 2010, 10:47

Beitrag von Tael »

Hallo Stefan,

Ich habe mich durch die Dokumentationen gewühlt.
Wenn ich das soweit richtig verstehe sollte ich auf diese Weise mein Chapter umdefinieren:
\renewcommand\chapter
{
\@startsection{chapter}{0}{\z@}%
  {-12pt plus -1ex minus -.2ex}
  {12pt}
  {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
    \setlength{\parfillskip}{\z@ plus 1fil}\fi
    \raggedsection\normalfont\sectfont\nobreak\size@section}%
}
Es sollte eigentlich folgendes tun:
- Level ist 0
- 12pt Abstand vorher und kein Indent danach ({-12pt plus -1ex minus -.2ex})
- 12 pt danach
- Schriftgröße sollte 16pt betragen, mit serifen und fett geschrieben

Die Schriftgröße setze ich über:
\addtokomafont{chapter}{\fontsize{16pt}{0pt}}
Und die Formatierung über:
\renewcommand{\sectfont}{\rmfamily\bfseries}
Probleme die dabei auftauchen:
- der Abstand danach/davor ist wesentlich größer als 12pt, mindestes 1 Zeile mehr!
- 12pt in der Überschrift scheinen nicht gleich groß zu sein wie 12pt im text

Hier mal mein Minimalbeispiel:
\documentclass
[
12pt,%Schriftgröße für Standardtext
twoside, %Zweiseitig (Einseitig mit oneside)
bibliography=totocnumbered, %Literaturvz. erscheint im Inhaltsvz. totoc ohne Nummer, totocnumbered mit
parskip%,
%parindent=0pt
]
{scrreprt} %Dokumentenklasse

\usepackage{blindtext}
\usepackage{txfonts}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}

\makeatletter 

\setcounter{secnumdepth}{4} %Bis zu welchem Level nummeriert
\addtokomafont{chapter}{\fontsize{16pt}{0pt}}
\addtokomafont{section}{\fontsize{12pt}{0pt}}

\renewcommand{\sectfont}{\rmfamily\bfseries} %Font für Überschriften festlegen


\renewcommand\chapter
{
\@startsection{chapter}{0}{\z@}%
  {-12pt plus -1ex minus -.2ex}
  {12pt}
  {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
    \setlength{\parfillskip}{\z@ plus 1fil}\fi
    \raggedsection\normalfont\sectfont\nobreak\size@section}%
}

\renewcommand\section
{\@startsection{section}{1}{\z@}%
  {-3.5ex \@plus -1ex \@minus -.2ex}%
  {2.3ex \@plus.2ex}%
  {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
    \setlength{\parfillskip}{\z@ plus 1fil}\fi
    \raggedsection\normalfont\sectfont\nobreak\size@section}%
}

\begin{document}
\blinddocument
\end{document}

Antworten