Pregunta

¿Estoy intentando mostrar algo de texto en mi programa usando (digamos) Windows GDI y algunos de los caracteres Unicode se muestran como cuadros? ¿Qué está pasando?

Vea también: ¿Qué hace? significa cuando mi texto se muestra como signos de interrogación?

¿Fue útil?

Solución

Por lo general, eso significa que el carácter Unicode especificado no está disponible en esa fuente en particular. Intente cambiar las fuentes a una de las multinacionales, debería desaparecer.

Otros consejos

(imagen de la camiseta en http://www.cafepress.com/nucleartacos.163046834)

La imagen anterior representa un modo de falla común de los sistemas de visualización de texto que no tienen en cuenta la gama completa de caracteres Unicode. En las plataformas Windows, los caracteres que no se pueden representar con ninguna de las fuentes disponibles se representan con un rectángulo abierto.

En Windows hay 2 problemas comunes de visualización que ocurren cuando se intenta mostrar caracteres Unicode:

  1. El texto

    a veces aparece como signos de interrogación

    • Esto ocurre cuando los datos Unicode se convierten a una codificación de conjunto de caracteres de 8 bits (o caracteres de múltiples bytes técnicos) generalmente a través de la página de códigos del sistema (pero otras páginas de códigos pueden especificarse en las llamadas de conversión). Si el conjunto de caracteres de 8 bits no incluye los caracteres necesarios, cualquier carácter que no se pueda representar en el conjunto de caracteres de destino se convierte en signos de interrogación.
  2. El texto

    a veces aparece como cuadros

    • Este es un problema con la fuente que no tiene el glpyh para un carácter en particular. Los cuadros aparecen cuando hay una falta de coincidencia entre los caracteres Unicode en el documento y los admitidos por la fuente. Específicamente, los cuadros representan caracteres no admitidos por la fuente seleccionada.

El acuerdo es que el texto que intenta mostrar incluye caracteres que no son compatibles con la fuente que está usando. El carácter de cuadro es el carácter de sustitución predeterminado para el texto Unicode que no tiene un glifo en la fuente.

En Windows, si está intentando mostrar texto en una variedad de idiomas diferentes, use una fuente como Arial Unicode MS; esto incluye glifos para una amplia gama de idiomas diferentes. Es un " mínimo denominador " fuente: los glifos generalmente estarán allí, pero generalmente carecen de carácter y algunos de los glifos se verán un poco raros uno al lado del otro.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top