PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bastelstunde - Boxen



jonathan
02-06-2011, 00:40
Hey,

ich bastel mir eine Datei mit verschiedenen Boxen nebeneinander zusammen. Leider muss ich für jede mögliche Variante eigene Boxen erstellen. Naja, das ist eigentlich nicht meine Frage.

Bei der Benutzung folgender Boxen gibt es ein Problem bei Absätzen. Ohne funktioniert's super - aber sobald im Text ein Absatz vorkommt, werden zwei Fehler ausgegeben (to many }) und die Weite der linken Box wird nicht mehr eingehalten.
Ich habe alles für das MB gelöscht, was nicht benötigt wird:

\documentclass[%
titlepage, % erzeugt eine eigene Titelseite
a4paper, % Seitengroesse
DIV10, % Textbereichsgroesse (siehe Koma Skript Dokumentation !)
% 8pt,
captions=nooneline,
olines, % Ausrichtung rechts
headsepline, % Einschaltung der Linien
plainheadsepline,
%footsepline,
%plainfootsepline,
numbers=noenddot,
%draft,%
]%
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{lmodern}
\usepackage{xcolor} % Farbe
\definecolor{matformeln}{HTML}{B0E2FF} %98FB98
\definecolor{cemformeln}{HTML}{FFFF66}

%float Box
\newcommand*{\fllbox}[1]{\noindent{%
\parbox[t]{\dimexpr 0.6\linewidth-2\fboxsep\relax}{%
#1}}\medskip\hfill}
\newcommand*{\flrbox}[1]{\noindent\parbox[t]{0.35\linewidth}{{\color{matformeln}\vspace{-0.7em}\rule{\linewidth}{2pt}}\flushleft%
\vspace{-1em}%
\small #1}}

\begin{document}
\fllbox{%
text 1 %hier ein Absatz und es funktioniert nicht mehr
text 2}
\flrbox{%
{\bfseries bsp fett}}
\end{document}

Weiß jemand, woran das liegt?

esdd
02-06-2011, 01:04
Hallo,

das liegt an dem * hinter \newcommand. Im Gegensatz zu \newcommand dürfen in den Argumenten von \newcommand* keine Leerzeilen oder \par-Befehle stehen.

Gruß
Elke

jonathan
02-06-2011, 01:21
Vielen Dank!!!! Du hast mir meine Nacht gerettet! ;-)

jonathan
02-06-2011, 02:28
Nochmal eben kurz:

Die Listen fangen in den rechten Boxen erst nach Ende einer Formel an - warum?


\documentclass[%
titlepage, % erzeugt eine eigene Titelseite
a4paper, % Seitengroesse
DIV10, % Textbereichsgroesse (siehe Koma Skript Dokumentation !)
% 8pt,
captions=nooneline,
olines, % Ausrichtung rechts
headsepline, % Einschaltung der Linien
plainheadsepline,
%footsepline,
%plainfootsepline,
numbers=noenddot,
%draft,%
]%
{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{lmodern}
\usepackage{xcolor} % Farbe
\definecolor{matformeln}{HTML}{B0E2FF} %98FB98
\definecolor{cemformeln}{HTML}{FFFF66}

% Abkürzen Formeln
\newcommand*{\beq}{\begin{equation}}
\newcommand*{\eeq}{\end{equation}}
\newcommand*{\bde}{\begin{description}}
\newcommand*{\ede}{\end{description}}
\newcommand*{\bci}{\begin{compactitem}}
\newcommand*{\eci}{\end{compactitem}}

\newcommand*{\eqm}[1]{\vspace*{-0.75em}\noindent\colorbox{matformeln}{%
\parbox[t]{\dimexpr\linewidth}{%
\begin{equation}#1\end{equation}}}}

%float Box
\newcommand{\fllbox}[1]{%
\noindent\begin{minipage}[t]%
{0.6\linewidth}%
#1%
\end{minipage}%
\vspace*{0.5em}\medskip\hfill}

\newcommand{\flrbox}[1]{%
\noindent\begin{minipage}[t]%
{0.35\linewidth}%
{\color{matformeln}\vspace{-0.8em}\rule{\linewidth}{2pt}}%
\noindent\newline #1%
\end{minipage}%
\vspace*{0.5em}\medskip\hfill}

\begin{document}
\fllbox{\eqm{\Pi = 3}}
\flrbox{\bde
\item[sdfdsf]sdsdf
\ede}

\fllbox{\eqm{\Pi = 2}}
\flrbox{\bci
\item[sdfdsf]sdsdf
\eci}

\fllbox{\bde
\item[dez]aer
\ede}
\flrbox{xcvbnm,}

\fllbox{wertzuio}
\flrbox{\bde
\item[sdfdsf]sdsdf
\ede}
\end{document}
%-----------------------------------------------------------------------

Der Code produziert 3 Fehler, irgendwas Wichtiges habe ich wohl vergessen ins MB zu kopieren. Die Abstände sind aber dennoch auch hier vorhanden.

Habt Ihr eine Idee?

VG

esdd
02-06-2011, 10:27
Hallo,

die Fehlermeldungen sagen eindeutig, dass \usepackage{paralist} in deinem Beispiel fehlt.

Der größere Abstand kommt durch das \newline zustande, da die Aufzählungen selbst automatisch in einer neuen Zeile beginnen. Lass es weg und füge dafür hinter {\color{matformeln}...} ein Leerzeichen vor dem Prozentzeichen ein oder lass das Prozentzeichen an der Stelle einfach weg:

\newcommand{\flrbox}[1]{%
\noindent\begin{minipage}[t]{0.35\linewidth}%
{\color{matformeln}\vspace*{-0.75em}\rule{\linewidth}{2pt}} %
\noindent#1%
\end{minipage}%
\vspace*{0.5em}\medskip\hfill
}

Gruß
Elke

jonathan
02-06-2011, 13:46
Super, vielen vielen Dank!

Noch eine Frage zu Absätzen, Zeilenumbrüchen in den Boxen:
Entferne ich das Sternchen (*), sind Absätze zwar möglich, werden aber nicht wie gewont eingerückt. Kann ich das auch noch irgendwie einstellen?

VG

jonathan
02-06-2011, 13:50
Noch eine weitere Frage, die gerade aufgetaucht ist:
Latex variiert die Abstände zwischen den einzelnen minipage-Umgebungen - ich habe das Gefühl, dass dies auf die Anzahl der auf einer Seite vorhandenen ankommt. Kann ich das unterbinden? Ich möchte immer den gleichen Abstand haben.

Nochmals danke!

VG