Espacio insertado antes y después del comando personalizado

Espacio insertado antes y después del comando personalizado

Creé un comando personalizado para usarlo con tamaños de impresión. Para comprobar más fácilmente las opciones de los comandos, utilizo un entorno de 'cambio' personalizado.

Lamentablemente, siempre hay un espacio antes y después de los tamaños insertados y no puedo encontrar una manera de deshacerme de ellos.

¿Dónde está mi error?

\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}

Así luce este MWE:

ingrese la descripción de la imagen aquí

información relacionada