Funzione ScriptGetFontScriptTags (usp10.h)
Recupera un elenco di script disponibili nel tipo di carattere per l'elaborazione OpenType. Gli script che comprendono l'elenco vengono recuperati dal tipo di carattere che si trova nel contesto del dispositivo fornito o dal motore di modellazione dello script che elabora il tipo di carattere dell'esecuzione corrente.
Sintassi
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
);
Parametri
[in, optional] hdc
Gestire nel contesto del dispositivo. Per altre informazioni, vedere Memorizzazione nella cache.
[in, out] psc
Puntatore a una struttura SCRIPT_CACHE che identifica la cache degli script.
[in, optional] psa
Puntatore a una struttura SCRIPT_ANALYSIS ottenuta da una chiamata precedente a ScriptItemizeOpenType. Questo parametro identifica il motore di data shaping, in modo che sia possibile recuperare i tag di script del tipo di carattere appropriati. L'applicazione fornisce un valore non NULL per questo parametro per recuperare i tag di script appropriati per l'esecuzione corrente.
In alternativa, l'applicazione può impostare questo parametro su NULL per recuperare i risultati non filtrati.
[in] cMaxTags
Lunghezza della matrice specificata da pScriptTags.
[out] pScriptTags
Puntatore a un buffer in cui questa funzione recupera una matrice di strutture OPENTYPE_TAG che definiscono i tag di script dal contesto di dispositivo o dal motore di scripting associato all'esecuzione corrente. Se il valore del membro eScript della struttura SCRIPT_ANALYSIS fornita nel parametro psa ha un tag di script definito associato e il tag è presente nel tipo di carattere, pScriptTags contiene solo questo tag.
[out] pcTags
Puntatore al numero di elementi nella matrice di tag script indicata da pScriptTags.
Valore restituito
Restituisce 0 in caso di esito positivo. Se non ha esito positivo, la funzione restituisce un valore HRESULT diverso da zero. L'applicazione può testare il valore restituito con le macro SUCCEEDED e FAILED .
Se il numero di tag corrispondenti supera il valore di cMaxTags, la funzione ha esito negativo con E_OUTOFMEMORY. L'applicazione può provare a chiamare di nuovo con buffer di dimensioni maggiori.
Commenti
Sebbene sia formalmente dichiarato come tipo ULONG, OPENTYPE_TAG definisce una matrice a 4 byte che contiene quattro valori ASCII a 8 bit di spazio, A-Z o a-z. Ad esempio, i tag di script per gli script latini e arabi sono rispettivamente "latn" e "arab".
Questa funzione recupera un singolo tag da un tipo di carattere nei casi seguenti:
- Il valore psa è associato al testo per un singolo script complesso.
- Il parametro psa indica NULL e il tipo di carattere supporta un singolo script.
Se è presente un tag corrispondente a uno script specifico, un motore di data shaping potrebbe non essere in grado di utilizzare il tipo di carattere per modellare l'elemento specificato perché il motore non dispone di un elemento necessario, ad esempio un sistema linguistico specifico o una funzionalità specifica.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | usp10.h |
Libreria | Usp10.lib |
DLL | Usp10.dll |
Componente ridistribuibile | Usp10.dll versione 1.600 o successiva in Windows XP |