PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : definecolor und xkevval



Moi23
05-03-2008, 17:34
Hallo,

ich versuche jetzt schon seit Stunden ein Problem in den Griff zu bekommen - hoffnungslos.
Ich habe wenig Erfahrung im Pakete schreiben, moechte das aber dennoch tun und stehe vor einem Problem.
Ich moechte mit dem xkeyval-Paket Variablen definieren und diese dann an bereits bestehende Funktionen uebergeben. So auch an \definecolor.



\define@key[Moi]{box}{color}[1,0,0]{#1}
\define@choicekey*+[Moi]{box}{farbcode}[\input\nummer]{rgb, name}{%
\ifcase\nummer%\relax
\definecolor{tmpboxcolor}{rgb}{\Moi@box@color}
\or
Tue erstmal nichts
\fi
}{%
}

\newcommand\ITsetboxpar[2]{%
\setkeys[Moi]{box}{color={#2}, farbcode=#1}
%\definecolor{tmpboxcolor}{rgb}{#2}
}


Ich moechte also \Moi@box@color an definecolor uebergeben. Ich bekomme genau da einen Fehler, das heisst, wenn ich die Zeile auskommentiere, dann funktioniert der Code.
In der vorletzten Zeile steht \definecolor{tmpboxcolor}{rgb}{#2} auskommentiert, weil diese Methode theoretisch funktioniert. Warum? Was macht LaTeX intern mit #2 und mit Macros in definecolor?

Mein Ziel ist es eigentlich wie bei hyperref auch vordefinierte Farben an xkey-Variablen zu uebergeben. Auch hier bekomme ich das einfach nicht hin.
Wenn mir da einer weiterhelfen koennte, wuerde ich mich sehr freuen.