Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
För att ange textmotivering kan ett program använda en av två metoder. För en enkel implementering av flerspråkig motivering bör programmet anropa ScriptJustify. Den genererar delta-dx-matrisen genom att överväga kashida, sedan mellanordsavstånd och sedan intercharacter-avstånd. För mer avancerad motivering kan programmet generera en uppdaterad delta dx-matris med hjälp av sina egna språkkunskaper och den information som hämtas av ScriptShape i matrisen SCRIPT_VISATTR.
Justeringsutrymme eller kashida ska infogas där det identifieras av uJustification medlem av SCRIPT_VISATTR. När du utför motivering mellan tecken bör programmet endast infoga extra utrymme efter att glyfer markerats med SCRIPT_JUSTIFY_CHARACTER.
Programmet utför caret-placering och träfftestning med hjälp av ScriptXtoCP och ScriptCPtoX. Mer information finns i Hantering av markörplacering och träfftestning.
För att få bredder på ett teckensnittsoberoende sätt anropar programmet ScriptGetLogicalWidths. Genom att skicka de logiska bredderna till ScriptApplyLogicalWidthkan ett textblock spelas upp på samma gränser med acceptabel kvalitetsförlust även när det ursprungliga teckensnittet inte är tillgängligt. Den genererar en matris med glyphbredder (för att öka bredden) som lämpar sig för att skicka till ScriptTextOut. Sådan registrering och återanvändning av information om förhöjd bredd på ett teckensnittsoberoende sätt kan vara användbart i situationer som metafilning i ett programdefinierat format.
Not
Metafiler stöder inte glyph-index. Om du vill skriva till en förbättrad metafil bör programmet använda ExtTextOut- och skriva de logiska tecknen direkt. Med den här mekanismen sker inte glyph-genereringen och placeringen förrän texten spelas upp.
Om du vill hämta de specifika glyfer som används för det aktuella teckensnittets standard, tomrum, kashida och så vidare, ska programmet anropa ScriptGetFontProperties. För att avgöra vilka tecken i en sekvens som stöds av det valda teckensnittet, anropar programmet ScriptGetCMap. Tecken som inte är tillgängliga har standardtecken i glyphbufferten. Observera att den här metoden misslyckas om ett teckensnitt återger ett tecken med hjälp av en kombination av glyfer i stället för ett enda tecken. Till exempel, 00C9; LATINSK VERSAL BOKSTAV E MED AKUT kan återges med det versala E-tecknet och det gängse tecknet för betoning. För att fastställa teckensnittsstöd för en sträng som innehåller den här typen av kodpunkter kan programmet anropa ScriptShape. Mer information finns i Using Shaping Engines.
Funktionen ScriptCacheGetHeight returnerar höjden på teckensnittet från teckensnittscachen. ScriptGetProperties innehåller information om den särskilda bearbetning som krävs för alla skript, indexerade efter skript. Den innehåller till exempel det primära språket som är associerat med skriptet, data som anger om skriptet är numeriskt och data som anger om skriptet är ett komplext skript.
ScriptGetGlyphABCWidth returnerar ABC-bredden för en viss glyf, vilket kan vara användbart för att rita glyphdiagram. Den bör dock inte användas för normal komplex skripttextformatering.
Relaterade ämnen