The \(y\)-position of form element texts and label texts differ because the form elements have an inner and outer border. We use text fields to show the labels and make the borders invisible. So label text and form element text is at the same \(y\)-position now. We create a white border for the labels \begin{lstlisting} bordercolor={1 1 1} \end{lstlisting} and set text alignment to right-aligned: \begin{lstlisting} align=2 \end{lstlisting} \lstinputlisting{../examples/ex0004.tex}