Pruebas adicionales han demostrado que el funcionamiento previsto se estaba confundiendo al desactivar XeTeXuseglyphmetrics. Considero esto un error (bug), y lamentablemente la gente probablemente está acostumbrada a ello, ya que XeTeXuseglyphmetrics normalmente se desactivaba con el código de python. Al corregir eso, también he corregido el valor negativo = posición absoluta que estaba parcialmente implementado.
Valor predeterminado previsto: \def\UnderlineLower{0.2em}

Comportamiento antiguo, con error \def\UnderlineLower{0.2em}

Nueva posición absoluta: \def\UnderlineLower{-0.2em)

Establecido en cero:

Establecido en -0.1:

Mi sugerencia para un texto emergente (tooltip):
Esto establece qué tan lejos (en ems) está la línea inferior por debajo del texto
y a qué es relativa. Si es positivo o cero, es la distancia
por debajo de la parte inferior de cualquier descendente. Si es negativo,
es la distancia por debajo de la línea base. No hay (ahora) forma
de usar el subrayado para tachar el texto.
Further testing has shown that the intended functioning was getting confused by switching off XeTeXuseglyphmetrics. I’m considering this a bug, and unfortunately people are probably used to it, since XeTeXuseglyphmetrics was normally turned off by the python code. In fixing that, I’ve also fixed the partly implemented negative value = absolute position.
Intended default value:\def\UnderlineLower{0.2em}

Old, buggy behaviour \def\UnderlineLower{0.2em}

New absolute position: \def\UnderlineLower{-0.2em)

Set to zero:

Set to -0.1:

My suggestion for a tooltip:
This sets how far (in ems) underline is below the text
and what it is relative to. If positive or zero, it is the distance
below the bottom of any descenders. If negative,
it is the distance below the baseline. There is (now) no way
to use underlining to cross out text.
Traducción automática desde English