PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Graue Text/Notizbox ...



alex0801
20-07-2007, 10:02
Hallo zusammen,

ich möchte in meiner Arbeit gerne sowas hier machen (das rot eingerahmte):

http://img186.imageshack.us/img186/549/samplepj3.th.jpg (http://img186.imageshack.us/my.php?image=samplepj3.jpg)

Die graue Box an sich hab ich schon. Dazu hab ich folgendes gemacht:



% Der Notiztitel
\newcommand{\boxnote}[1]{\marginpar{\raggedleft\textsf{{\footnotesize{#1}} }}}

% Der Abstand zur Seite
\newlength{\myBoxWidth}
\setlength{\myBoxWidth}{\textwidth}
\addtolength{\myBoxWidth}{-40mm}

\newcommand{\myGreyBox}[2]
{%
\setlength{\fboxrule}{0.4mm}%

\fcolorbox{white}{lightgrey}%
{%
\parbox{\myBoxWidth}{#2}
}%
\boxnote{\footnotesize{#1}}
}


Das blöde ist nur: Mit \marginpar wird der "Titel" der Textbox ganz nach außen auf den Seitenrand gesetzt, und nicht wie in der Zeichnung "innerhalb" des Textbereichs. Zudem sitzt er nicht am oberen Ende der Box (vertical top) sondern befindet sich auf halber Höhe (vertical center). Aber er soll so sitzen wie im Bild gezeigt :-(

Hab kein Plan welchen Trick ich hier anwenden soll. Hat jemand nen Tipp für mich?

Ach ja: Ich arbeite mit einem zweiseitigen Layout. Je nach Seite sollte der Titel der Box links, bzw. rechts sitzen.

Gruß
Alex

alex0801
20-07-2007, 10:14
Hmm, hab n bisschen weiter gebastelt...



\newcommand{\myGreyBox}[2]
{%
\setlength{\fboxrule}{0mm}%

\begin{description}
\item[#1]


\fcolorbox{}{lightgrey}%
{%
\parbox{\myBoxWidth}{#2}
}%


\end{description}

%\boxnote{\footnotesize{#1}}
}


Mit dem Description-Ding funktionierts besser. Der Titel sitzt jetzt innerhalb des Textbereichs der Seite.

Aber ich hab immer noch nicht das abwechselnde rechts-links ausrichten und die breite der Textbox ist noch nicth abhängig von der Breite des Titels der daneben steht. Ebenso steht der Titel immer noch nicht am oberen Ende des Box...

- Alex

bischi
20-07-2007, 10:32
Hab ich selber nie gebraucht - wär aber vielleicht ein Versuch wert:

ftp://ftp.cstug.cz/pub/tex/CTAN/help/Catalogue/entries/shadebox.html

MfG Bischi

alex0801
20-07-2007, 10:44
Hmm, ich sehe nicht wie das weiterhelfen soll?

Die Box an sich funktioniert. Problem macht der außen stehende Titel.
Könnte mich auch damit anfreunden dass der Titel am Seitenrand steht, also mit \marginpar ... Aber wie krieg ich den Titel ans obere Ende der Box?

Wenn ich den Befehl für den Titel nach \fcolorbox einfüge, dann steht der titel auf halber höhe der Textbox.

Füge ich den Befehl VOR \fcolorbox ein, dann steht der Titel zwar am oberen Ende der Box, jedoch 1..2 Zeilen zu hoch.

Und was ich eben noch festgestellt habe: Wenn der Inhalt der Box so groß ist dass die Box an ihrer aktuellen Stelle nicht mehr ganz auf dei Seite passt, dann ziehen sich die Abstände in die Länge nur auf mehr als eine Seite passt, dann erfolgt kein Seitenumbruch innerhalb der Box.
Siehe Screenshot:

http://img120.imageshack.us/img120/9879/sample2gm2.th.jpg (http://img120.imageshack.us/my.php?image=sample2gm2.jpg)

rais
20-07-2007, 12:28
Moin moin,
versuch's mal etwa so:


\documentclass[ngerman]{scrbook}
\usepackage{%
babel,
color,
colortbl,
tabularx
}
\definecolor{boxbg}{gray}{0.8}
\newcommand\x{Hier steht ein wenig Text, damit man sehen kann, was wann, wo, wie wohl passiert\dots}
\newcommand\leftinfobox[2]{%
\noindent\begin{tabularx}{\linewidth}{@{}l>{\columncolor{boxbg}}X@{}}
\textbf{\itshape#1} & #2\tabularnewline
\end{tabularx}%
}%\leftinfobox{title}{text}
\newcommand\rightinfobox[2]{%
\noindent\begin{tabularx}{\linewidth}{@{}>{\columncolor{boxbg}}Xl@{}}
#2 & \textbf{\itshape#1}\tabularnewline
\end{tabularx}%
}%\rightinfobox{title}{text}
\newcommand\infobox[3][]{%
\ifx#1l \leftinfobox{#2}{#3} \else%
\ifx#1r \rightinfobox{#2}{#3} \else%
\ifodd\value{page} \leftinfobox{#2}{#3} \else \rightinfobox{#2}{#3} \fi\fi\fi%
}%\infobox[l|r]{title}{text}
\begin{document}
\infobox{ungerade}{\x}
\clearpage
\infobox{gerade}{\x}
\clearpage
\infobox[l]{definitiv links}{\x}
\infobox[r]{definitiv rechts}{\x}
\end{document}

MfG,

alex0801
20-07-2007, 12:34
Ach du scheiße.. Auf sowas wär ich nicht gekommen. Danke ... Das ist zu 99% das was ich wollte.

Wenn das Ding jetzt noch nen Seitenumbruch (wegen viel text) und Bilder verkraftet, sowie automatisch rechts-links entscheiden kann, wäre ich wunschlos glücklich.

- Alex

alex0801
20-07-2007, 13:51
Hmm, mit Seitenumbruch sieht's bei Tabellen ja, wie ich gelesen hab, nicht so rosig aus. ltxtable soll das zwar machen können, aber ich schnall die Doku nicht. Da ist kein Beispiel drin das mich weiter bringt etc.
Ist das bei normalen Boxen besser?

alex0801
20-07-2007, 15:19
Forum durchgewälzt und viel gelesen: Seitenumbruch bei Boxen: Fehlanzeige...

So langsam ödet's mich an. Kann doch nicht so schwer sein

a) den Titel zu positionieren
b) den Text neben dem Titel über mehrere Seiten eizurücken
c) farbig zu hinterlegen

Bilder könnte ich da noch außen vor lassen.

alex0801
20-07-2007, 15:59
So, ich habe meine Lösung gefunden. Hier ein Minibeispiel:



\documentclass[12pt,ngerman]{scrbook}
\usepackage{%
babel,
color,
blindtext
}
%% ************************************************** ******************************
%: Textboxen
%% ************************************************** ******************************
\usepackage{framed}
\definecolor{shadecolor}{rgb}{0.85,0.85,0.85} % grauer Hintergrund für die Box

%% Setzt eine Randnotitz (margin note) für die Textbox:
% textsf -> serifenlose schrift einstellen
\newcommand{\boxnote}[1]{
\marginpar[
\vspace{22.35pt} % Damit lässt sich die Position des Titels in der Höhe korrigieren
\raggedright
\textbf{\itshape#1}
]{
\vspace{22.35pt} % Damit lässt sich die Position des Titels in der Höhe korrigieren
\raggedright
\textbf{\itshape#1}
}
}

%\mybox{title}{text}
\newcommand\mybox[2]{%
\boxnote{#1}
\begin{shaded}
#2
\end{shaded}
}
%% ************************************************** ******************************
\begin{document}

Hallo Welt

bla bla bla


\mybox{Szenario}{
\blindtext[8]
}

\end{document}


Und so siehts fertig aus:

http://img514.imageshack.us/img514/5738/sample3ay1.th.jpg (http://img514.imageshack.us/my.php?image=sample3ay1.jpg)

Einzigste "Schönheitsfehler:
- Man muss die vertikale Position des Titels je nach eigener Vorlage korrigieren
- Der Titel sitzt am Seitenrand
- Bilder gehen in der Shadebox nicht

ABER der Seitenumbruch klappt 1a ... wenigstens was.

rais
20-07-2007, 19:28
Moin moin,


So, ich habe meine Lösung gefunden.

Das ist doch prima :)
Bei sooo viel Inhalt solltest Du vllt lieber eine Umgebung definieren, auch wenn's vllt nicht stoert...


- Bilder gehen in der Shadebox nicht

wie kommst Du denn darauf? Gleitumgebungen vermutlich... aber Bilder lassen sich mit \includegraphics auch innerhalb einer shaded-Umgebung einbinden.

MfG,

alex0801
23-07-2007, 15:35
\includegraphics hab ich probiert: geht nicht. Wird einfach nicht angezeigt.

\footnote geht auch nicht wirklich. Ich bekomm zwar die Referenz-Nummer der Fußnote direkt beim Woirt angezeigt, aber in der Fußzeile erscheint nix. Außerhalb des Shade-Blocks funktioniert sowohl Bild als auch Fußnote.

Wie hast du das mit "Gleitumgebung" gemeint?

- Alex