Share via


ScriptGetFontFeatureTags-Funktion (usp10.h)

Ruft eine Liste der typografischen Features für das definierte Schreibsystem für die OpenType-Verarbeitung ab. Die typografischen Featuretags, die die Liste enthalten, werden aus der Schriftart im angegebenen Gerätekontext oder Cache abgerufen.

Syntax

HRESULT ScriptGetFontFeatureTags(
  [in, optional] HDC             hdc,
  [in, out]      SCRIPT_CACHE    *psc,
  [in, optional] SCRIPT_ANALYSIS *psa,
  [in]           OPENTYPE_TAG    tagScript,
  [in]           OPENTYPE_TAG    tagLangSys,
  [in]           int             cMaxTags,
  [out]          OPENTYPE_TAG    *pFeatureTags,
  [out]          int             *pcTags
);

Parameter

[in, optional] hdc

Handle mit dem 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 Schriftartfeaturetags für die entsprechende Schriftart und skripts abgerufen werden können.

Alternativ kann die Anwendung diesen Parameter auf NULL festlegen, um ungefilterte Ergebnisse abzurufen.

[in] tagScript

Eine OPENTYPE_TAG Struktur, die das Skripttag definiert, das den angegebenen Featuretags zugeordnet ist.

[in] tagLangSys

Eine OPENTYPE_TAG Struktur, die das Sprachtag definiert, das den angegebenen Featuretags zugeordnet ist.

[in] cMaxTags

Die Durch pFeatureTags angegebene Länge des Arrays.

[out] pFeatureTags

Zeiger auf einen Puffer, in dem diese Funktion ein Array von OPENTYPE_TAG Strukturen abruft, die die typografischen Featuretags definieren, die von der Schriftart im Gerätekontext oder Cache für das definierte Schreibsystem unterstützt werden.

[out] pcTags

Zeiger auf die Anzahl der Elemente im Featuretagarray.

Rückgabewert

Gibt bei Erfolg 0 zurück. Die Funktion gibt einen nichtzero-HRESULT-Wert zurück, wenn er nicht erfolgreich ist. Die Anwendung kann den Rückgabewert mit den Makros SUCCEEDED und FAILED testen.

Wenn die Anzahl ü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 sie formal als ULONG-Typ deklariert ist, enthält eine OPENTYPE_TAG-Struktur ein 4-Byte-Array, das vier 8-Bit-ASCII-Werte von Space, A-Z oder a-z enthält. Das Featuretag für das Ligature-Feature ist beispielsweise "liga".

Diese Funktion blendet skriptpflichtige oder sprachrelevante Features aus, da die Shaping-Engine diese Features steuert. Die Anwendung hat keine Kontrolle über die Verarbeitung der Shaping-Engine für sprachspezifische Features. ScriptGetFontFeatureTags blendet beispielsweise die arabischen Skriptfeatures für erst-, mediale und endgültige Formulare aus.

Wichtig Ab Windows 8: Um die Ausführung unter Windows 7 zu gewährleisten, muss ein Modul, das Uniscribe verwendet, Usp10.lib vor gdi32.lib in seiner Bibliotheksliste angeben.
 

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

Weitere Informationen

Zwischenspeichern

OPENTYPE_TAG

SCRIPT_ANALYSIS

SCRIPT_CACHE

ScriptItemizeOpenType

Uniscribe

Uniscribe Functions