Compartir a través de


Enumeración y selección de fuentes internacionales

En cada versión principal de Windows, hay fuentes agregadas para admitir scripts y idiomas internacionales. Consulte Compatibilidad con scripts y fuentes en Windows para las fuentes que se han agregado en cada versión de Windows desde Windows 2000, así como sus scripts, regiones e idiomas compatibles.

EnumFontFamiliesEx

Para enumerar fuentes internacionales en la aplicación, puede usar la función EnumFontFamiliesEx . EnumFontFamiliesEx permite enumerar fuentes basadas en el nombre del tipo de letra y el conjunto de caracteres pasando un puntero a una estructura LOGFONT que contiene el nombre del tipo de letra y la información del conjunto de caracteres. Para llamar a EnumFontFamiliesEx, puede especificar un nombre de tipo de letra o un conjunto de caracteres, o bien puede solicitar lo que esté disponible. Al establecer el nombre de tipo de letra del LOGFONT en NULL , se enumeran todos los nombres de letra. Al establecer el campo charset en DEFAULT_CHARSET se enumeran todos los conjuntos de caracteres.

Tenga en cuenta que los conjuntos de caracteres son una noción heredada correspondiente a los conjuntos de caracteres Pre-Unicode. En este momento, no hay ningún mecanismo para enumerar fuentes que admitan scripts arbitrarios o intervalos de caracteres en Unicode. La estructura NEWTEXTMETRICEX pasada por EnumFontFamExProc incluye la estructura FONTSIGNATURE , que incluye declaraciones más detalladas proporcionadas por el desarrollador de fuentes en cuanto a qué páginas de códigos y qué rangos Unicode admite la fuente. Para determinar con más precisión qué intervalos de caracteres admite una fuente determinada, seleccione la fuente en un contexto de dispositivo y llame a GetFontUnicodeRanges. Tenga en cuenta que esta API no admite planos complementarios Unicode.

ChooseFont

Puede usar la función ChooseFont para mostrar un cuadro de diálogo común que permita al usuario seleccionar fuentes internacionales basadas en el conjunto de caracteres. Puede especificar una de las tres marcas para determinar, en función del conjunto de caracteres, qué fuentes se muestran en el cuadro de diálogo ChooseFont: CF_SCRIPTSONLY, CF_SELECTSCRIPT o CF_NOSCRIPTSEL.

La marca CF_SCRIPTSONLY indica a la API que muestre las fuentes de todos los conjuntos de caracteres que no sean Símbolos o OEM.

Si desea mostrar solo las fuentes que cubren un conjunto de caracteres determinado, debe especificar la marca CF_SELECTSCRIPT. Antes de llamar a ChooseFont, inicialice el campo lfCharSet de la estructura LOGFONT . Si está interesado en especificar solo el conjunto de caracteres, establezca los demás campos de la estructura LOGFONT en NULL. Para que ChooseFont examine la estructura LOGFONT , también debe especificar la marca CF_INITTOLOGFONTSTRUCT .

Por último, al igual que con cualquier otro campo del cuadro de diálogo Fuente, puede optar por mostrar un cuadro de lista de scripts en blanco. Esta funcionalidad es útil si el usuario ha resaltado varias fuentes diferentes que abarcan varios conjuntos de caracteres. En este caso, llamaría a ChooseFont con la marca CF_NOSCRIPTSEL .

A partir de Windows 7, ChooseFont implementa compatibilidad con la ocultación de fuentes de listas de selección de fuentes. ChooseFont solo mostrará las fuentes mostradas y filtrará las fuentes ocultas mientras se muestran las fuentes en el cuadro de lista. Se agrega la marca adicional (CF_INACTIVEFONTS) en el miembro flags de la estructura ChooseFont para que pueda mostrar todas las fuentes instaladas en la lista de fuentes, igual que ChooseFont se comportó antes de Windows 7. Para obtener información detallada sobre las diferencias de comportamiento en Windows 7 para la función ChooseFont , consulta ChooseFont() Win32 Common Dialog in the Windows 7 Application Quality Cookbook. Consulte la función ChooseFont y la estructura CHOOSEFONT para las diferencias de experiencia del usuario final en Windows 7.

Tenga en cuenta que los conjuntos de caracteres son una noción heredada correspondiente a los conjuntos de caracteres Pre-Unicode. En este momento, no hay ningún mecanismo para filtrar fuentes basadas en scripts Unicode o intervalos de caracteres.

Controles de fuente en la cinta panorámica de Windows

Windows 7 presenta la cinta panorámica de Windows que incluye un conjunto de controles destinados a la selección de fuentes. Estos controles de fuente admiten el nuevo comportamiento de ocultación de fuentes de Windows 7. Puede usar esos controles de fuente para mostrar solo las fuentes mostradas y permitir al usuario seleccionar la fuente.

Nota:

La compatibilidad con ocultar fuentes no está disponible cuando la cinta de opciones panorámica de Windows se ejecuta en cualquier plataforma anterior a Windows 7.

 

EnumFontFamiliesEx

ChooseFont

Estructura CHOOSEFONT

Controles de fuente en la cinta panorámica de Windows

Cuadro de diálogo común ChooseFont() Win32