Aracılığıyla paylaş


Şekillendirme Altyapılarını Kullanma

Uniscribe, belirli betikler için düzen bilgisini içeren birden çok şekillendirme altyapısı kullanır. Ayrıca karakter oluşturma, kapsam ölçümü ve sözcük ayırma desteği gibi yazı tipine özgü betik özelliklerini işlemek için OpenType düzen şekillendirme altyapısından da yararlanır. Uniscribe, Unicode çift yönlü algoritmasını kullanarak çift yönlü karakter yeniden sıralamasını yönetir ve Arapça, İbranice ve Tay dili şekillendirme için OpenType olmayan düzen yazı tipi biçimlerini anlar.

Her şekillendirme altyapısına atanan tam kod noktası aralıkları farklılık gösterebileceğinden, SCRIPT_UNDEFINED dışında betik numaraları yayımlanmaz. Ancak uygulamanız, genel betik özellikleri tablosuna erişen ScriptGetProperties işlevini çağırarak betiklerin özniteliklerini test edebilir. Uygulama, kendi düzen kurallarını gerekli şekillendirme altyapısı bölümleriyle birleştirmeye yardımcı olmak amacıyla genel betik özelliklerini kullanabilir.

Uygulama, ScriptShape işlevine çağrısıyla şekillendirme altyapısına erişir. Tüm karmaşık betik şekillendirme altyapıları, basamak şekillendirme altyapıları ve ASCII şekillendirme altyapıları, şekillendirmeden önce cihaz bağlam tutamacında belirtilen yazı tipini doğrular. Karmaşık betiklerin okunabilir olması için ScriptItemize işlevi tarafından döndürülen betik kullanılarak şekillendirilmesi gerekir. Diğer metin bölümleri SCRIPT_ANALYSIS yapısının eScript üyesinde belirtilen SCRIPT_UNDEFINED ile şekillendirilmişse, okunaklı kalır ancak yazım kalitesini kaybedebilir.

ScriptShape başarılı olması durumunda 0 döndürür veya uygulama tarafından sağlanan yazı tipi yeterli karakter veya şekillendirme tablosu içermiyorsa USP_E_SCRIPT_NOT_IN_FONT döndürür. Uygulama SCRIPT_UNDEFINED belirtiyorsa ve bazı karakterler yazı tipi tarafından desteklenmiyorsa işlev yine başarılı olur. Bu durumda, uygulama eksik gliflerin varlığı için glif çıkış arabelleği taramalıdır. Eksik gliflerle başa çıkma stratejileri için bkz. Yazı Tipi Yedeği Kullanma.

Uniscribe Kullanarak