Funzione ScriptLayout (usp10.h)
Converte una matrice di livelli di incorporamento delle esecuzioni in una mappa di posizione da visualizzazione a logica e/o posizione da logica a oggetto visivo.
Sintassi
HRESULT ScriptLayout(
[in] int cRuns,
[in] const BYTE *pbLevel,
[out, optional] int *piVisualToLogical,
[out, optional] int *piLogicalToVisual
);
Parametri
[in] cRuns
Numero di esecuzioni da elaborare.
[in] pbLevel
Puntatore a una matrice, di lunghezza indicata da cRuns, contenente i livelli di incorporamento dell'esecuzione. I livelli di incorporamento per tutte le esecuzioni nella riga devono essere inclusi, ordinati in modo logico. Per altre informazioni, vedere la sezione Osservazioni.
[out, optional] piVisualToLogical
Puntatore a una matrice, di lunghezza indicata da cRuns, in cui questa funzione recupera i livelli di incorporamento eseguiti riordinati in base all'ordine visivo. Il primo elemento della matrice rappresenta l'esecuzione da visualizzare all'estrema sinistra e le voci successive devono essere visualizzate procedendo da sinistra a destra. La funzione imposta questo parametro su NULL se non è presente alcun output.
[out, optional] piLogicalToVisual
Puntatore a una matrice, di lunghezza indicata da cRuns, in cui questa funzione recupera le posizioni di esecuzione dell'oggetto visivo. Il primo elemento della matrice è la posizione visiva relativa in cui deve essere visualizzata la prima esecuzione logica, ovvero la posizione di visualizzazione più a sinistra è 0. La funzione imposta questo parametro su NULL se non è presente alcun output.
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 .
Commenti
Per informazioni sul contesto in cui questa funzione viene normalmente chiamata, vedere Visualizzazione di testo con Uniscribe .
Questa funzione gestisce solo i dati relativi a una singola riga di testo.
I livelli di incorporamento dell'esecuzione vengono definiti nell'algoritmo bidirezionale Unicode. Descrivono la direzione di una corsa, la direzione di tutte le esecuzioni in cui è incorporata e la direzione del paragrafo. Non è necessario alcun altro input per la chiamata a questa funzione. Per altre informazioni, vedere Unicode.
Nella tabella seguente sono elencati i livelli di incorporamento predefiniti. L'applicazione può aggiungere livelli in base alle esigenze.
Level | Significato |
---|---|
0 | Esecuzione da sinistra a destra in un paragrafo da sinistra a destra. |
1 | Esecuzione da destra a sinistra incorporata in un'esecuzione da sinistra a destra in un paragrafo da sinistra a destra. In alternativa, un'esecuzione da destra a sinistra, non incorporata in un'altra esecuzione, in un paragrafo da destra a sinistra. |
2 | Esecuzione da sinistra a destra incorporata in un'esecuzione da destra a sinistra di tipo 1. |
3 | Esecuzione da destra a sinistra incorporata in un'esecuzione da sinistra a destra di tipo 2. |
Una "posizione logica" fa riferimento al posizionamento di un'esecuzione rispetto ad altre esecuzioni. È la posizione in un archivio di backup e corrisponde all'ordine in cui l'utente legge il testo ad alta voce. La "posizione visiva" di un'esecuzione si riferisce al modo in cui l'esecuzione viene visualizzata visivamente sulla linea, tenendo conto delle possibili indicazioni che l'esecuzione può avere.
L'applicazione può chiamare questa impostazione di funzione piLogicalToVisual o piVisualToLogical o entrambi.
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 |
Componente ridistribuibile | Internet Explorer 5 o versione successiva in Windows Me/98/95 |