Vor und nach benutzerdefiniertem Befehl wird ein Leerzeichen eingefügt

Vor und nach benutzerdefiniertem Befehl wird ein Leerzeichen eingefügt

Ich habe einen benutzerdefinierten Befehl zum Drucken von Größen erstellt. Um die Befehlsoptionen einfacher überprüfen zu können, verwende ich eine benutzerdefinierte „Switch“-Umgebung.

Leider ist vor und nach den eingefügten Größenangaben immer ein Leerzeichen und ich finde keine Möglichkeit diese zu entfernen.

Wo ist mein Fehler?

\documentclass{scrartcl}

\usepackage{xifthen}

\newenvironment{switch}[1]{%
    \newboolean{default}
    \setboolean{default}{true}
    %
    \newcommand{\case}{}
    \renewcommand{\case}[2]{\ifthenelse{\equal{#1}{##1}}{%
        \setboolean{default}{false}##2}{}}%
    %
    \newcommand{\default}{}
    \renewcommand{\default}[1]{\ifthenelse{\boolean{default}}{##1}{}}
}{}

\newcommand{\sizesDWLmm}[4][]{%
    \begin{switch}{#1}%
        \case{short}{(DWL~#2~$\times$~#3~$\times$~#4mm)} %
        \case{long}{(depth~#2mm~$\times$ width~#3mm~$\times$ length~#4mm)} %
        \default{(#2~$\times$~#3~$\times$~#4mm)} %
    \end{switch}
}


\begin{document}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas at blandit libero. Curabitur luctus pulvinar \sizesDWLmm{4}{5}{9} mauris ac accumsan. Nulla sollicitudin ex \sizesDWLmm[long]{4}{5}{9} ac pellentesque accumsan. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec vel venenatis nunc. In ac vulputate nunc. Aliquam \sizesDWLmm[short]{4}{5}{9} volutpat ultricies consectetur. Nullam quis orci id nisi facilisis dapibus vel ut risus.

\end{document}

So sieht dieses MWE aus:

Bildbeschreibung hier eingeben

verwandte Informationen