Funzione ScriptGetFontLanguageTags (usp10.h)

Recupera un elenco di tag di lingua disponibili per l'elemento specificato e supportati da un tag di script specificato per l'elaborazione OpenType. I tag che comprendono l'elenco vengono recuperati dal tipo di carattere nel contesto di dispositivo o nella cache specificati.

Sintassi

HRESULT ScriptGetFontLanguageTags(
  [in, optional] HDC             hdc,
  [in, out]      SCRIPT_CACHE    *psc,
  [in, optional] SCRIPT_ANALYSIS *psa,
  [in]           OPENTYPE_TAG    tagScript,
  [in]           int             cMaxTags,
  [out]          OPENTYPE_TAG    *pLangsysTags,
  [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 lingua dei caratteri per il tipo di carattere e gli script appropriati.

In alternativa, l'applicazione può impostare questo parametro su NULL per recuperare i risultati non filtrati.

[in] tagScript

Struttura OPENTYPE_TAG che definisce il tag di script per il quale viene richiesto l'elenco di tag di lingua associati.

[in] cMaxTags

Lunghezza della matrice specificata da pLangSysTags.

[out] pLangsysTags

Puntatore a un buffer in cui questa funzione recupera una matrice di strutture OPENTYPE_TAG che identificano i tag di lingua corrispondenti ai criteri di input.

[out] pcTags

Puntatore al numero di elementi nella matrice di tag del linguaggio.

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 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, la struttura OPENTYPE_TAG contiene 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 lingua per romeno, urdu e persiano sono rispettivamente "ROM", "URD" e "FAR". Si noti che ogni tag termina con uno spazio.

Importante A partire da Windows 8: per mantenere la possibilità di eseguire in Windows 7, un modulo che usa Uniscribe deve specificare Usp10.lib prima di gdi32.lib nell'elenco di librerie.
 

Requisiti

   
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

Vedi anche

Memorizzazione nella cache

OPENTYPE_TAG

SCRIPT_ANALYSIS

SCRIPT_CACHE

ScriptItemizeOpenType

Uniscribe

Funzioni Uniscribe