ScriptGetFontScriptTags-Funktion (usp10.h)
Ruft eine Liste der Skripts ab, die in der Schriftart für die OpenType-Verarbeitung verfügbar sind. Skripts, die die Liste enthalten, werden von der Schriftart im angegebenen Gerätekontext oder von der Skriptstrukturierungs-Engine abgerufen, die die Schriftart der aktuellen Ausführung verarbeitet.
Syntax
HRESULT ScriptGetFontScriptTags(
[in, optional] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in, optional] SCRIPT_ANALYSIS *psa,
[in] int cMaxTags,
[out] OPENTYPE_TAG *pScriptTags,
[out] int *pcTags
);
Parameter
[in, optional] hdc
Handle für den Gerätekontext. Weitere Informationen finden Sie unter Zwischenspeichern.
[in, out] psc
Zeiger auf eine SCRIPT_CACHE Struktur, die den Skriptcache identifiziert.
[in, optional] psa
Zeiger auf eine SCRIPT_ANALYSIS-Struktur, die aus einem vorherigen Aufruf von ScriptItemizeOpenType abgerufen wurde. Dieser Parameter identifiziert die Gestaltungs-Engine, sodass die entsprechenden Schriftartskripttags abgerufen werden können. Die Anwendung stellt einen Wert ungleich NULL für diesen Parameter bereit, um Skripttags abzurufen, die für die aktuelle Ausführung geeignet sind.
Alternativ kann die Anwendung diesen Parameter auf NULL festlegen, um ungefilterte Ergebnisse abzurufen.
[in] cMaxTags
Die Länge des Arrays, das durch pScriptTags angegeben wird.
[out] pScriptTags
Zeiger auf einen Puffer, in dem diese Funktion ein Array von OPENTYPE_TAG Strukturen abruft, die Skripttags aus dem Gerätekontext oder der skriptbasierten Engine definieren, die der aktuellen Ausführung zugeordnet ist. Wenn dem Wert des eScript-Elements der SCRIPT_ANALYSIS Struktur, die im psa-Parameter bereitgestellt wird, ein bestimmtes Skripttag zugeordnet ist und das Tag in der Schriftart vorhanden ist, enthält pScriptTags nur dieses Tag.
[out] pcTags
Zeiger auf die Anzahl der Elemente im Skripttagarray, das durch pScriptTags angegeben wird.
Rückgabewert
Gibt bei Erfolg 0 zurück. Die Funktion gibt einen HRESULT-Wert ungleich null zurück, wenn sie nicht erfolgreich ist. Die Anwendung kann den Rückgabewert mit den Makros SUCCEEDED und FAILED testen.
Wenn die Anzahl der übereinstimmenden Tags den Wert von cMaxTags überschreitet, schlägt die Funktion mit E_OUTOFMEMORY fehl. Die Anwendung kann versuchen, mit größeren Puffern erneut aufzurufen.
Hinweise
Während OPENTYPE_TAG formal als ULONG-Typ deklariert ist, definiert OPENTYPE_TAG ein 4-Byte-Array, das vier 8-Bit-ASCII-Werte des Leerzeichens A-Z oder a-z enthält. Beispielsweise sind die Skripttags für lateinische und arabische Skripts "latn" bzw. "arab".
Diese Funktion ruft in den folgenden Fällen ein einzelnes Tag aus einer Schriftart ab:
- Der psa-Wert ist Text für ein einzelnes komplexes Skript zugeordnet.
- Der psa-Parameter gibt NULL an, und die Schriftart unterstützt ein einzelnes Skript.
Wenn ein Tag vorhanden ist, das einem bestimmten Skript entspricht, kann eine Strukturierungs-Engine die Schriftart möglicherweise nicht verwenden, um das angegebene Element zu formen, da der Engine ein erforderliches Element fehlt, z. B. ein bestimmtes Sprachsystem oder ein bestimmtes Feature.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | usp10.h |
Bibliothek | Usp10.lib |
DLL | Usp10.dll |
Verteilbare Komponente | Usp10.dll Version 1.600 oder höher unter Windows XP |