Detectar el tamaño de fuente de Windows (100%, 125% y 150%)

Creé una aplicación que funciona perfectamente hasta que el usuario selecciona 125% o 150%. Rompería mi aplicación. Más tarde encontré una manera de encontrar el tamaño de fuente detectando el DPI.

Esto funcionó muy bien hasta que las personas con versiones chinas de Windows 7 comenzaron a usar mi aplicación. La aplicación completa se rompe en Windows 7 chino. Por lo que puedo decir (realmente no puedo probarlo, solo tengo la versión en inglés y la instalación de los paquetes de idiomas no causa el problema) Los caracteres chinos están causando un DPI extraño que rompe mi solicitud

Mi código actual funciona así:

if (dpi.DpiX == 120) // For 125% fonts
{
    // Resize form and set default font to correct problems
}
else if (dpi.DpiX == 96) // For 100 and 150% fonts
{
    // Resize form and set default font to correct problems
}

En las versiones en inglés de Windows 7 que funcionan muy bien, pero de alguna manera las versiones chinas se saltan por este lado, y el formulario se destruye solo, con controles que ni siquiera aparecen, la fuente es extremadamente grande y supera el problema, los cuadros se mueven.

Entonces, ¿cuál es una buena manera de detectar la escala de fuente de Windows (100%, 125% y 150%) sin detectar DPI? Necesito algo sólido que funcione en todos los sistemas operativos e idiomas de Windows 7.

Respuestas a la pregunta(4)

Su respuesta a la pregunta