Funzione ScriptPlace (usp10.h)
Genera le informazioni di avanzamento del glifo e offset bidimensionale dall'output di ScriptShape.
Sintassi
HRESULT ScriptPlace(
[in] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in] const WORD *pwGlyphs,
[in] int cGlyphs,
[in] const SCRIPT_VISATTR *psva,
[in, out] SCRIPT_ANALYSIS *psa,
[out] int *piAdvance,
[out] GOFFSET *pGoffset,
[out] ABC *pABC
);
Parametri
[in] hdc
Facoltativo. Gestire il 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] pwGlyphs
Puntatore a un buffer di glifi ottenuto da una chiamata precedente alla funzione ScriptShape .
[in] cGlyphs
Numero di glifi nel buffer del glifo.
[in] psva
Puntatore a una matrice di strutture SCRIPT_VISATTR che indicano gli attributi visivi.
[in, out] psa
Puntatore a una struttura SCRIPT_ANALYSIS . In input, questa struttura viene ottenuta da una chiamata precedente a ScriptItemize. In output, questa struttura contiene valori recuperati da ScriptPlace.
[out] piAdvance
Puntatore a una matrice in cui questa funzione recupera informazioni avanzate sulla larghezza.
[out] pGoffset
facoltativo. Puntatore a una matrice di strutture GOFFSET in cui questa funzione recupera glifi x e y. Questa matrice deve essere di lunghezza indicata da cGlyphs.
[out] pABC
Puntatore a una struttura ABC in cui questa funzione recupera la larghezza ABC per l'intera esecuzione.
Valore restituito
Restituisce 0 in caso di esito positivo. La funzione restituisce un valore HRESULT diverso da zero se non riesce. L'applicazione può testare il valore restituito con le macro SUCCESSED e FAILED .
La funzione restituisce E_PENDING se la cache dello script specificata dal parametro psc non contiene informazioni sufficienti per inserire glifi e il parametro hdc è impostato su NULL in modo che la funzione non possa completare il processo di posizionamento. L'applicazione deve configurare un contesto di dispositivo corretto per l'esecuzione e chiamare nuovamente questa funzione con il contesto del dispositivo appropriato e con tutti gli altri parametri uguali.
Commenti
Per una discussione sul contesto in cui viene normalmente chiamata questa funzione, vedere Visualizzazione del testo con Uniscrivimento .
La larghezza ABC composita per l'intero elemento identifica la quantità di glifi a sinistra della posizione iniziale e a destra della lunghezza implicita dalla somma delle larghezze avanzate. La larghezza totale di avanzamento della linea è esattamente abcA+abcB+abcC. I valori abcA e abcC vengono mantenuti come proporzioni dell'altezza della cella rappresentata in 8 bit e sono quindi approssimativamente +/-1%. La larghezza totale recuperata, ovvero la somma dei valori abcA+abcB+abcC indicati da piAdvance, è accurata per la risoluzione del motore di modellazione TrueType.
Tutte le matrici sono in ordine visivo a meno che il membro fLogicalOrder non sia impostato nella struttura SCRIPT_ANALYSIS indicata dal parametro psa .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | usp10.h |
Libreria | Usp10.lib |
DLL | Usp10.dll |