Box mit Überschrift gerundete Ecken

Tabellen und Grafiken erstellen und anordnen


julianhd1

Box mit Überschrift gerundete Ecken

Beitrag von julianhd1 »

Hallo,

ich habe folgendes Problem: ich möchte zur Darstellung von Definitionen, Sätzen, etc. in meinem Dokument gerne folgendes Aussehen der Box:

----Definition---------------------
| bla bla bla Text Text |
|________________________|

Das ganze eventuell mit gerundeten Ecken.

Gibt es für diese Form der Box bereits ein fertiges Packet (eventuell basierend auf fancybox?) oder kann ich das vergessen und muss mir selber was bauen?

Benutzeravatar
bloodworks
Moderator
Moderator
Beiträge: 1425
Registriert: Mo 19. Jan 2009, 10:52
Wohnort: /dev/null

Beitrag von bloodworks »

Hallo
dafür gibt es gefühlte 200 Pakete, ua. Xymtex, fancybox....

Ich habe dir hier mal ne tikz Lösung, weil ich darauf gerade Lust habe. Das ist vll nicht die optimale Lösung, aber sie macht Spaß.


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{positioning}


\begin{document}
\newcommand{\myboxy}[3]{
\begin{tikzpicture}[
every node/.style={rectangle,rounded corners,draw=black, top color=white, bottom color=yellow!50,very thick, inner sep=0.3em, minimum size=1em} ] 
\node[text width=#3](main) at (0,0 ){\vspace{3pt}  #1};
\node[above =-2mm of main.north west, anchor=south west] (title) {#2};
\end{tikzpicture} }

\myboxy{Inhalt}{Titel}{\textwidth}

\end{document}
[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2]Minimalbeispiel | [3]FAQ
[4]Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.


julianhd1

Beitrag von julianhd1 »

OMG, OMFG, falls ich jemals einfach so ein Ding aus dem Ärmel schüttel, weil es mir "Spass" macht dann fall ich vor mir selber auf die Knie. Danke für die schnelle als auch perfekte Antwort.
Ich hab wohl auch einige Pakete gefunden die einem die Möglichkeit einer Box, einer ovalen Box oder ähnlichem bieten, aber eben nix dass einem nur ein Kommando mit 3 Eingaben an die Hand gibt und so ausschaut wie ich das brauch.

julianhd1

Beitrag von julianhd1 »

noch ein kurzer Nachtrag: Ich muss noch einmal meine Verwunderung aussprechen dass es kein Paket gibt dass jene genannte Box von Haus aus kann oder kennt ihr da noch was?

Benutzeravatar
bloodworks
Moderator
Moderator
Beiträge: 1425
Registriert: Mo 19. Jan 2009, 10:52
Wohnort: /dev/null

Beitrag von bloodworks »

julianhd1 hat geschrieben:noch ein kurzer Nachtrag: Ich muss noch einmal meine Verwunderung aussprechen dass es kein Paket gibt dass jene genannte Box von Haus aus kann oder kennt ihr da noch was?
Jaja zb Xymtex hat so was eingebaut. Und mit fancybox zB geht das auch relativ leicht. Zwar nicht out-of-the-box aber das ist machbar. Es gab auch mal thmbox.

Kurze Bemerkung noch zu der Lösung oben: Das ist nicht mit Grenzwerten getestet, ich weiß nicht wirklich, wass passiert, wenn die Längen gegen 0 gehen. ...
[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2]Minimalbeispiel | [3]FAQ
[4]Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.


julianhd1

Beitrag von julianhd1 »

Ok, ich hab dein Beispiel mal etwas modifiziert habe jetzt allerdings noch ein Problem:
\newcommand{\defbox}[1]{ 
\begin{tikzpicture}[ 
every node/.style={rectangle,rounded corners,draw=black, top color=white, bottom color=white!50,very thick, inner sep=0.3em, minimum size=1em} ] 
\node[text width=(\textwidth -40pt)](main) at (0,0 ){\vspace{10pt}  #1}; 
\node[text width = 2.5cm, above= + 0mm of main.north west, xshift=+0.23cm, yshift=-0.2cm, anchor=south west, draw=white](surround){}; 
\node[above = -3mm of surround.center] (title) {\sffamily \textbf{DEFINITION}};
\end{tikzpicture} } 
ich wollte gerne noch einen weissen Rand um die Überschriftsbox damit die Linie der grossen box davor und dahinter unterbrochen wird. Ich weiß mir leider nicht besser zu helfen als eine weitere Box hinter die Überschritsbox zu legen, die dann etwas größer ist als eben die Überschriftsbox. Es stellt sich nun die Frage:

a) kann man nur den Inhalt einer Box durchsichtig machen (mit opacity wird das ganze scheiss Ding durchsichtig) damit quasi der Rand für die Linien unterbrechung sorgt, die darunter liegende Überschriftsbox allerdings noch sichtbar ist?

b) es tausendmal einfacher machen in dem man um die Überschriftsbox einen weiteren (weisen) Rahmen zeichnet?

julianhd1

Beitrag von julianhd1 »

kurz zu meiner Motivation: das mit der weiteren Box hinter der Überschriftsbox ist eigentlich gut, allerdings nicht dynamisch für eine in der Länge variierende Eingabe der Überschriftsbox

julianhd1

Beitrag von julianhd1 »

kurz zu meiner Motivation: das mit der weiteren Box hinter der Überschriftsbox ist eigentlich gut, allerdings nicht dynamisch für eine in der Länge variierende Eingabe der Überschriftsbox

Benutzeravatar
bloodworks
Moderator
Moderator
Beiträge: 1425
Registriert: Mo 19. Jan 2009, 10:52
Wohnort: /dev/null

Beitrag von bloodworks »

Ich hab jetzt nur Mal den tikz Code, "vercommandung" analog zu oben.

So was macht man gerne mit Double Lines, zudem habe ich den Code etwas entrümpelt, da du scheinbar kein shading brauchst. Effektiv wird der Zwischenraum der Doubles lines zu der neuen "Linie" und die Double Linie zum Abstand. Achtung Innenabstand zum Text ändert sich.
\begin{tikzpicture}[
every node/.style={rectangle,rounded corners, fill=white,line width=1pt, inner sep=0.3em, minimum size=1em,} ]
\node[text width={\textwidth -40pt}, draw=black](main) at (0,0 ){\vspace{10pt} Inahlt};
\node[text width = 2.5cm, above= + 0mm of main.north west, xshift=+0.23cm, yshift=-0.2cm,line width=2pt, anchor=south west,draw=white, double=black, double distance = 1pt](surround){DEFI};
\end{tikzpicture} 
[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2]Minimalbeispiel | [3]FAQ
[4]Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.


julianhd1

Beitrag von julianhd1 »

ok, jetzt sieht das richtig sauber aus. Danke nochmal.

Antworten