Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Uniscribe usa più motori di shaping che contengono la conoscenza del layout per script particolari. Sfrutta anche il motore di modellazione del layout OpenType per la gestione delle funzionalità di script specifiche del tipo di carattere, ad esempio la generazione di glifi, la misurazione dell'estensione e il supporto per l'interruzione delle parole. Uniscribe gestisce il riordinamento bidirezionale dei caratteri usando l'algoritmo bidirezionale Unicode e comprende i formati di carattere di layout non OpenType per l’adattamento di lettere arabe, ebraiche e thailandesi.
Poiché gli intervalli di punti di codice esatti assegnati a ogni motore di data shaping possono variare, i numeri di script non vengono pubblicati, ad eccezione di SCRIPT_UNDEFINED. Tuttavia, l'applicazione può testare gli attributi degli script chiamando la funzione ScriptGetProperties, che accede alla tabella delle proprietà dello script globale. L'applicazione può usare le proprietà dello script globale per combinare le proprie regole di layout con le divisioni del motore di data shaping necessarie.
L'applicazione accede a un motore di composizione con una chiamata alla funzione ScriptShape. Tutti i motori di modellazione di script complessi, i motori di modellazione delle cifre e i motori di modellazione ASCII convalidano il font indicato nell'handle del contesto di dispositivo prima della modellazione. Gli script complessi devono essere modellati usando lo script restituito dalla funzione ScriptItemize per essere leggibile. Altre esecuzioni rimangono leggibili se modellate con SCRIPT_UNDEFINED specificato nel membro eScript della struttura SCRIPT_ANALYSIS, anche se potrebbero perdere qualità tipografica.
ScriptShape restituisce 0 se ha esito positivo o USP_E_SCRIPT_NOT_IN_FONT se il tipo di carattere fornito dall'applicazione non contiene glifi o tabelle di shaping sufficienti. Se l'applicazione specifica SCRIPT_UNDEFINED e alcuni caratteri non sono supportati dal tipo di carattere, la funzione ha comunque esito positivo. In questo caso, l'applicazione deve analizzare il buffer di output del glifo per la presenza di glifi mancanti. Per le strategie per gestire i glifi mancanti, vedere Using Font Fallback.
Argomenti correlati