Discussion:
parbox und innerer Abstand
(zu alt für eine Antwort)
Ekkart Kleinod
2012-10-19 15:14:15 UTC
Permalink
Hallo alle,

kurze Vorbemerkung: ich versuche gerade, unser Corporate Design
(Fraunhofer) umzusetzen, basierend auf KOMA-Script. Da tun sich
teilweise einige Schwierigkeiten auf, bei denen ich Eure Hilfe bräuchte.

Ich würde die Probleme gerne in einzelnen Postings absetzen, damit die
Beispiele nicht zu groß werden.

Problem Nr. 1: innerer Abstand bei parbox

Im Fuß sollen vier Angaben stehen. Dafür habe ich die Spaltenbreite
"mywidth" und den Abstand zwischen den Spalten "mysep" definiert. Um
keinen eigenen Seitenstil zu definieren (habe ich versucht, bin ich an
der Ausrichtung gescheitert), lege ich eine Spalte in den inneren Fuß,
eine in den äußeren und zwei in die Mitte, mit Abstand "mysep".

nach meiner Rechnung müsste das gut aussehen. Die Boxen überlagern sich
aber. Ich vermute, dass das am inneren Abstand zwischen Text und parbox
liegt.

Meine Frage: stimmt das und kennt Ihr einen Weg, den Abstand auf 0 zu
setzen?

Problem Nr. 2: leeres parbox

Ich ging davon aus, dass eine parbox immer die angegebene Breite hat,
egal, ob etwas drin steht. Das ist aber nicht der Fall.

Also behelfe ich mir derzeit mit einem horizontalen "space", dann
funktioniert das. Ist das eine gute Lösung oder macht man das anders?

(Hintergrund: wenn eine Angabe der inneren Fußzeilen fehlt, sollen die
anderen trotzdem gut ausgerichtet bleiben.)

Vielen Dank für Eure Zeit und Mühe, gleich noch ein Minimalbeispiel dran.

Gruß Ekkart.

PS: ich bin leider erst Dienstag wieder in der Newsgroup, legt also
fehlende Reaktion bitte nicht als Ignoranz aus.

Beispiel:

\documentclass{scrartcl}

\RequirePackage{calc}

\newlength{\mywidth}
\setlength{\mywidth}{41.25mm}
\newlength{\mysep}
\setlength{\mysep}{4mm}

\setlength{\textwidth}{3\mywidth + 2\mysep}
\setlength{\marginparwidth}{\mywidth}
\setlength{\marginparsep}{\mysep}

\RequirePackage[automark]{scrpage2}
\pagestyle{scrheadings}
\clearscrheadings
\setfootwidth[0pt]{textwithmarginpar}
\setfootsepline{.5pt}

\ofoot{\smash{\fbox{\parbox[t]{\mywidth}{outer}}}}
\cfoot{%
\smash{\fbox{\parbox[t]{\mywidth}{center left}}}%
\hspace*{\mysep}%
\smash{\fbox{\parbox[t]{\mywidth}{center right}}}%
}
\ifoot{\smash{\fbox{\parbox[t]{\mywidth}{inner}}}}

\begin{document}

Ich \marginpar{ich bin im Rand} bin Blindtext.

\fbox{\parbox[t]{\mywidth}{ich bin so breit wie mywidth}}

jetzt kommt die leere Box \fbox{\parbox[t]{\mywidth}{}}

besser: \fbox{\parbox[t]{\mywidth}{\hspace{1pt}}}

\end{document}
Uwe Siart
2012-10-20 06:19:28 UTC
Permalink
Post by Ekkart Kleinod
Meine Frage: stimmt das und kennt Ihr einen Weg, den Abstand auf 0 zu
setzen?
Nein, das stimmt nicht. Der Abstand der \parbox zu ihrem Inhalt ist
Null:

\documentclass{article}
\usepackage{blindtext}
\begin{document}
\setlength{\fboxsep}{0pt}
\fbox{\parbox{0.3\linewidth}{\blindtext}}
\end{document}
Post by Ekkart Kleinod
Also behelfe ich mir derzeit mit einem horizontalen "space", dann
funktioniert das. Ist das eine gute Lösung oder macht man das anders?
Eine Tabelle mit Festbreitenspalten wäre auch ein Vorschlag. Das Paket
'array' liefert Spaltentypen mit verschiedener vertikaler Ausrichtung.
Die Abstände zwischen den Spalten kannst du mit @{\hspace{<laenge>}}
festnageln.
--
Uwe
Ekkart Kleinod
2012-10-22 15:07:14 UTC
Permalink
Post by Uwe Siart
Post by Ekkart Kleinod
Meine Frage: stimmt das und kennt Ihr einen Weg, den Abstand auf 0 zu
setzen?
Nein, das stimmt nicht. Der Abstand der \parbox zu ihrem Inhalt ist
hmm.

OK, muss es an was anderem liegen. Ich probiere Deinen Code morgen aus.
Post by Uwe Siart
Post by Ekkart Kleinod
Also behelfe ich mir derzeit mit einem horizontalen "space", dann
funktioniert das. Ist das eine gute Lösung oder macht man das anders?
Eine Tabelle mit Festbreitenspalten wäre auch ein Vorschlag. Das Paket
'array' liefert Spaltentypen mit verschiedener vertikaler Ausrichtung.
festnageln.
OK, das wäre eine Idee, würde ich nur für die zwei inneren Angaben
machen. Ich bin dran und melde, was es geworden ist.

Danke für die Hilfe,

Ekkart.

Loading...