Anzeige:
Ergebnis 1 bis 8 von 8

Thema: variabler vertikaler platz

  1. #1
    Registrierter Benutzer
    Registriert seit
    24.05.2013
    Beiträge
    56

    variabler vertikaler platz

    Hallo.
    ich habe mir eine eigene "erinnerungsumgebung" gebastelt. Diese besteht im groben aus einem rahmen erstellt mit mdframed. Innerhalb dieses Rahmens ist in der oberen ecke ein Bild mit picins eingefügt.
    Wenn ich nun die umgebung aufrufe funktioniert auch alles wunderbar. Allerdings passiert es, dass das bild über den rahmen hinausragt, falls der Inhalt der umgebung zu kurz ist. nun würde ich gerne etwas in der art machen:
    Wenn der Inhalt kurz ist, soll der Rahmen eine feste größe haben, falls er lang ist, soll die größe sie wie gehabt variabel anpassen. Der rahmen sollte also immer eine mindestgröße des Bildes haben

    zur vollständigkeit: mein code, leider recht lang (Ich habe das bild herausgekommentiert..., um mein Problem zu sehen, solltet ihr eine einbinden...):

    Code:
    \documentclass{article}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %Experiment für andere lampenboxx
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \usepackage{tikz}
    \usepackage[framemethod=default]{mdframed}
    \usepackage{graphicx}
    
    \usepackage{paralist}
    \usepackage{picins}
    
    \usepackage{floatflt}
    
    \usepackage{wrapfig}
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxstyle   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \mdfdefinestyle{lampenboxxstyle}{
    topline=true,
    frametitleaboveskip=\dimexpr-\ht\strutbox\relax,
    linewidth=4pt,
    linecolor={black!50!white},
    backgroundcolor={black!10!white},
    fontcolor=black,
    font={},
    %
    needspace=8cm,%Minimale Höhe der Lampenboxx für eienn Split
    %
    innerleftmargin=3ex,
    innerrightmargin=3ex,
    innertopmargin=0ex,
    innerbottommargin=3ex,
    leftmargin=0ex,
    rightmargin=0,
    skipabove=3ex,
    skipbelow=3ex
    }
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxzähler   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \newcounter{lampenboxxtestcounter}[section]
    \renewcommand{\thelampenboxxtestcounter}{\thesection.\arabic{lampenboxxtestcounter}}
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxumgebung   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \newenvironment{lampenboxxtest}[1][]{
    \stepcounter{lampenboxxtestcounter}
    \ifstrempty{#1}
    {\mdfsetup{
    frametitle={
    \tikz[baseline=(current bounding box.east),outer sep=0pt]
    \node[anchor=east,rectangle,fill=black!50!white]
    {\strut \textcolor{white}{Zur~Erinnerung~\thelampenboxxtestcounter}};}}}
    {\mdfsetup{
    frametitle={
    \tikz[baseline=(current bounding box.east),outer sep=0pt]
    \node[anchor=east,rectangle,fill=black!50!white]
    {\strut \textcolor{white}{Zur~Erinnerung~\thelampenboxxtestcounter:~#1}};}}}
    \mdfsetup{style=lampenboxxstyle
    }
    \begin{mdframed}[]\relax
    \setdefaultleftmargin{2.2cm}{}{}{}{}{}
    \IfFileExists{bmvorlagen/logos/lampe.pdf}
    {
    %\parpic{{\includegraphics[scale=1.4]{lampe}}}
    }
    ~
    }
    {\end{mdframed}}
    \begin{document}
    \begin{lampenboxxtest}
    Bla Bla
    \end{lampenboxxtest}
    \end{document}
    Geändert von marxlechen (30-05-2013 um 22:36 Uhr)

  2. #2
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Hallo,

    füge am Ende des ersten Absatzes deines Erinnerungstextes \picskip{0} ein.

    Gruß
    Elke

  3. #3
    Registrierter Benutzer
    Registriert seit
    24.05.2013
    Beiträge
    56
    ja damit habe ich es geschafft. sehr genial! vielen lieben dank. schon zum zweiten mal hast du mir sehr geholfen!!!!

  4. #4
    Registrierter Benutzer
    Registriert seit
    24.05.2013
    Beiträge
    56
    vielleicht kannst du mir sogar noch eine frage zu dazu beantworte:

    das bild in der Erinnerungsumgebung wird von fließtext umflossen. was auch sehr gut funktioniert. allerdings nicht mehr, wenn aufzählungen ins spiel kommen. meine etwas plumpe lösung war da mit \setdefaultleftmargin{2.2cm}{}{}{}{}{} einfach alle aufzählungen weiter rechts zu beginnen. gibt es eine möglichkeit diese doch irgendwie auch zum "umfließen" des bildes zu bekommen.

  5. #5
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Hallo,

    die Kombination aus parpic und einer Aufzählung ist schwierig. Mit der inparaitem Umgebung aus dem paralist Paket scheint es zu gehen, aber ob das immer funktioniert, ist mir nicht klar.

    Code:
    \begin{lampenboxxtest}
      \noindent
      \begin{inparaitem}
        \item test\\
        \item test\\
        \item \blindtext\\
        \item test\\
        \item test
      \end{inparaitem}
      \picskip{0}
    \end{lampenboxxtest}
    Gruß
    Elke

  6. #6
    Registrierter Benutzer
    Registriert seit
    24.05.2013
    Beiträge
    56
    Ah. Die Funktion hat mir schon sehr weitergeholfen... nochmal vielen Dank.
    Ich habe versucht sie durch "überschreiben" von der anwendung her wieder wie die normale itemize umgebung zu machen. Allerdings weiß ich nicht wie ich dies auch mit \item zu "\item ............ \\" machen könnte. Ich dachte daran es durch ein "\\\item" zu ersetzen, allerdings stimmen dann der erste und letzte item nicht.... ideen?

    Aber das größere Problem: Wenn ich innerhalb der lampenboxx einen neuen Absatz beginne, so umfließt er erneut den platz des Bildes. und ich hab keine ahnung, woran das liegt...komisch...hilfe?

    Hier der aktuelle code (als grafik eine eigene einsetzen....):
    Code:
    \documentclass{article}
    
    \usepackage{empheq}
    \usepackage{textcomp}
    \usepackage{tabto}
    \usepackage{listliketab}
    \usepackage{tabularx}
    \usepackage{amssymb}
    \usepackage{amsmath}
    \usepackage{mathtools}
    \usepackage{tikz}
    \usepackage[framemethod=default]{mdframed}
    \usepackage{graphicx}
    \usepackage{paralist}
    \usepackage{picins}
    \usepackage{floatflt}
    \usepackage{wrapfig}
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxstyle   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \mdfdefinestyle{lampenboxxstyle}{
    topline=true,
    frametitleaboveskip=\dimexpr-\ht\strutbox\relax,
    linewidth=2pt,
    linecolor={black!50!white},
    backgroundcolor={black!10!white},
    fontcolor=black,
    font={},
    needspace=5cm,
    innerleftmargin=3ex,
    innerrightmargin=3ex,
    innertopmargin=0ex,
    innerbottommargin=3ex,
    leftmargin=0ex,
    rightmargin=0,
    skipabove=3ex,
    skipbelow=3ex
    }
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxzähler   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \newcounter{lampenboxxtestcounter}[section]
    \renewcommand{\thelampenboxxtestcounter}{\thesection.\arabic{lampenboxxtestcounter}}
    
    %%%%%%%%%%%%%%%%%%   Lampenboxxumgebung   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    \newenvironment{lampenboxxtest}[1][]{
    \stepcounter{lampenboxxtestcounter}
    \ifstrempty{#1}
    {\mdfsetup{
    frametitle={
    \tikz[baseline=(current bounding box.east),outer sep=0pt]
    \node[anchor=east,rectangle,fill=black!50!white]
    {\strut \textcolor{white}{Zur~Erinnerung~\thelampenboxxtestcounter}};}}}
    {\mdfsetup{
    frametitle={
    \tikz[baseline=(current bounding box.east),outer sep=0pt]
    \node[anchor=east,rectangle,fill=black!50!white]
    {\strut \textcolor{white}{Zur~Erinnerung~\thelampenboxxtestcounter:~#1}};}}}
    \mdfsetup{style=lampenboxxstyle
    }
    \begin{mdframed}[]\relax
    
    \IfFileExists{bmvorlagen/logos/lampe.pdf}
    {
    \newenvironment{itemizetemp}{\begin{itemize}}{\end{itemize}}
    \renewenvironment{itemize}{\noindent\begin{inparaitem}}{\end{inparaitem}}
    \newenvironment{enumeratetemp}{\begin{inparaenum}}{\end{inparaenum}}
    \renewenvironment{enumerate}{\noindent\begin{inparaenum}}{\end{inparaenum}}
    
    \parpic{{\includegraphics[scale=1.4]{lampe}}}
    }
    }
    {\picskip{0}
    \renewenvironment{itemize}{\begin{itemizetemp}}{\end{itemizetemp}}
    \renewenvironment{enumerate}{\begin{enumeratetemp}}{\end{enumeratetemp}}
    \end{mdframed}}
    
    \begin{document}
    \begin{lampenboxxtest}
    bla
    \end{lampenboxxtest}
    \end{document}

  7. #7
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Das \picskip{0} muss wirklich ans Ende des ersten Absatzes. Mit anderen Worten: bei mehreren Absätzen in deiner Lampenboxx reicht es nicht dies am Umgebungsende stehen zu haben.

    Da du die Umdefinition von itemize innerhalb deiner Lampenboxx vornimmst, ist diese sowieso nur lokal wirksam. Du kannst dir also die ganzen Zeilen mit itemizetemp und enumeratetemp sparen.

    Gruss
    Elke

  8. #8
    Registrierter Benutzer
    Registriert seit
    24.05.2013
    Beiträge
    56
    Danke! mmhhhh. jetzt funktioniert es zwar wie gewollt, allerdings schreibe ich diese umgebung nicht nur für mich und hätte deshalb gerne, dass innerhalb von ihr möglichst gewohnt geschrieben werden kann. Allerdings sind nun noch zwei sachen ungewohnt: zum eienn muss man manuell \parpic{0} nach dem ersten absatz einfügen und nach jedem item einer aufzählung eine neue zeile beginnen.
    Ideen, wie man das mit implementieren könnte?

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •