Énumère toutes les polices système, nommées de manière unique, qui correspondent aux caractéristiques de police spécifiées
#include <WinAPIGdi.au3>
_WinAPI_EnumFontFamilies ( [$hDC = 0 [, $sFaceName = '' [, $iCharSet = 1 [, $iFontType = 0x07 [, $sPattern = '' [, $bExclude = False]]]]]] )
$hDC | [optionnel] Le handle du contexte de périphérique à partir duquel énumérer les polices. Si ce paramètre est 0, la fonction utilise le DC de l'écran actuel de l'application. |
$sFaceName | [optionnel] Le nom de type de la police. Si ce paramètre est une chaîne vide (par défaut), la fonction énumère une police de chaque type de police disponible. Si ce paramètre est un nom de type valide, la fonction énumère toutes les polices avec le nom spécifié. |
$iCharSet | [optionnel] Le jeu de caractères. Peut prendre l'une des valeurs prédéfinies suivantes: Si ce paramètre est défini à $DEFAULT_CHARSET (par défaut), la fonction énumère toutes les polices, nommés de manière unique, dans tous les jeux de caractères. S'il y a deux polices avec le même nom, un seul est énuméré. Si ce paramètre est défini à une valeur valide de jeu de caractères, la fonction énumère uniquement les polices dans le jeu de caractères spécifié. $ANSI_CHARSET $BALTIC_CHARSET $CHINESEBIG5_CHARSET $DEFAULT_CHARSET (par défaut) $EASTEUROPE_CHARSET $GB2312_CHARSET $GREEK_CHARSET $HANGEUL_CHARSET $MAC_CHARSET $OEM_CHARSET $RUSSIAN_CHARSET $SHIFTJIS_CHARSET $SYMBOL_CHARSET $TURKISH_CHARSET $VIETNAMESE_CHARSET Édition en langue coréenne de Windows: $JOHAB_CHARSET Édition en langue du Moyen-Orient de Windows : $ARABIC_CHARSET $HEBREW_CHARSET Édition en langue Thai de Windows : $THAI_CHARSET |
$iFontType | [optionnel] Le type des polices à énumérer. Ce paramètre peut être 0 (polices vectorielles), (-1) (toutes les polices), ou une combinaison des valeurs suivantes: $DEVICE_FONTTYPE (par défaut) $RASTER_FONTTYPE (par défaut) $TRUETYPE_FONTTYPE (par défaut) |
$sPattern | [optionnel] La chaîne wildcards des polices à inclure dans l'énumération ou à exclure de l'énumération. Ceci n'a de sens que si le nom de type de police n'est pas spécifié. Cette chaîne peut contenir des caractères génériques. ce modèle sera ignoré si ce paramètre est omis ou une chaîne vide. |
$bExclude | [optionnel] Spécifie s'il faut utiliser le modèle pour exclure les polices, les valeurs valides sont: True - Exclure les polices correspondantes. False - Inclure les polices correspondantes (par défaut). |
Succès: | Retourne le tableau 2D contenant les informations suivantes: [0][0] - Nombre de lignes dans le tableau (n) [0][1] - Inutilisé [n][0] - Le nom de type de la police. [n][1] - Le style de la police. [n][2] - Le nom unique de la police. [n][3] - Le script, qui est le jeu de caractères de la police. [n][4] - Le type de la police ($*_FONTTYPE). [n][5] - Le pitch, technologique, et la famille de la police (le même que dans la structure TEXTMETRIC). [n][6] - Le jeu de caractères de la police ($*_CHARSET). [n][7] - Les flags de police ($NTM_*). |
Échec: | Définit @error <> 0. |
Les polices de nombreuses langues d'Asie orientale ont deux noms de type: un nom anglais et un nom local.
La fonction retourne le nom de type anglais si les paramètres régionaux du système ne correspondent pas à la langue de la police.
Lorsque le mode graphique du contexte de périphérique est mis à $GM_ADVANCED et le flag $DEVICE_FONTTYPE est spécifié, _WinAPI_EnumFontFamilies() retourne une liste de polices système de Type 1 et OpenType.
Lorsque le mode graphique n'est pas défini à $GM_ADVANCED, cette fonction retourne une liste de polices système de Type 1, OpenType et TrueType.
Consultez EnumFontFamiliesEx dans la librairie MSDN.
#include <APIGdiConstants.au3> #include <Array.au3> #include <FontConstants.au3> #include <WinAPIGdi.au3> ; Énumère toutes les polices nommées de manière unique, à l'exclusion des polices "@", qui sont conçues pour le texte vertical, dans le jeu de caractères ANSI Local $aData = _WinAPI_EnumFontFamilies(0, '', $ANSI_CHARSET, BitOR($DEVICE_FONTTYPE, $TRUETYPE_FONTTYPE), '@*', 1) If Not @error Then _ArrayDisplay($aData, '_WinAPI_EnumFontFamilies') EndIf ; Énumère tous les styles de police "Arial" dans le jeu de caractères ANSI $aData = _WinAPI_EnumFontFamilies(0, 'Arial', $ANSI_CHARSET) If Not @error Then _ArrayDisplay($aData, '_WinAPI_EnumFontFamilies') EndIf