von byteorder » Mo 10. Feb 2014, 22:57
hallo, ich habe probleme mit einer if-abfrage.
ich habe 2 boxen, bei denen möchte ich jeweils alternierend die farbe des rahmens ändern
ich habe mir 2 commands geschrieben, die mir immer alternierend grün und orange zurückliefern, das funktioniert soweit (siehe beispiel)
wenn ich das ganze dann allerdings in ein environment einbaue, schreit pdflatex mit folgender meldung: Argument of \boolean has an extra }
woran könnte das liegen?
hinweis: der folgende code lässt sich mit pdflatex erzeugen, die entsprechende fehlerzeile wurde auskommentiert. es geht jedoch um die auskommentierte zeile.
\documentclass{scrbook}
\usepackage{ifthen}
\usepackage[framemethod=tikz]{mdframed}
\usepackage[a4paper,margin=3cm]{geometry}
\newboolean{boolvar}
\setboolean{boolvar}{false}
\newcommand\getcolor{\ifthenelse{\boolean{boolvar}}{green}{orange}}
\newcommand\flipcolor{\ifthenelse{\boolean{boolvar}}{\setboolean{boolvar}{false}}{\setboolean{boolvar}{true}}}
\newenvironment{bbox}{\begin{mdframed}[linecolor=blue]}{\end{mdframed}}
\newenvironment{cbox}{\flipcolor\begin{mdframed}
%[linecolor=\getcolor]
}{\end{mdframed}}
\begin{document}
\getcolor\\ %test, that the function is working
\flipcolor
\getcolor\\ %test, that the function is working
\begin{bbox}
should be a blue framed box
\end{bbox}
\begin{cbox}
should be green or orange alternating
\end{cbox}
\begin{cbox}
should be green or orange alternating
\end{cbox}
\end{document}
hallo, ich habe probleme mit einer if-abfrage.
ich habe 2 boxen, bei denen möchte ich jeweils alternierend die farbe des rahmens ändern
ich habe mir 2 commands geschrieben, die mir immer alternierend grün und orange zurückliefern, das funktioniert soweit (siehe beispiel)
wenn ich das ganze dann allerdings in ein environment einbaue, schreit pdflatex mit folgender meldung: Argument of \boolean has an extra }
woran könnte das liegen?
hinweis: der folgende code lässt sich mit pdflatex erzeugen, die entsprechende fehlerzeile wurde auskommentiert. es geht jedoch um die auskommentierte zeile.
[code]
\documentclass{scrbook}
\usepackage{ifthen}
\usepackage[framemethod=tikz]{mdframed}
\usepackage[a4paper,margin=3cm]{geometry}
\newboolean{boolvar}
\setboolean{boolvar}{false}
\newcommand\getcolor{\ifthenelse{\boolean{boolvar}}{green}{orange}}
\newcommand\flipcolor{\ifthenelse{\boolean{boolvar}}{\setboolean{boolvar}{false}}{\setboolean{boolvar}{true}}}
\newenvironment{bbox}{\begin{mdframed}[linecolor=blue]}{\end{mdframed}}
\newenvironment{cbox}{\flipcolor\begin{mdframed}
%[linecolor=\getcolor]
}{\end{mdframed}}
\begin{document}
\getcolor\\ %test, that the function is working
\flipcolor
\getcolor\\ %test, that the function is working
\begin{bbox}
should be a blue framed box
\end{bbox}
\begin{cbox}
should be green or orange alternating
\end{cbox}
\begin{cbox}
should be green or orange alternating
\end{cbox}
\end{document}
[/code]