Metin Ölçümleri
Windows 8'den başlayarak düzeninize, özel yazı tipi seçiminize ve diğer yoğun ölçüm kullanımlı işlemlerinize yardımcı olmak için DirectWrite , zengin metin uygulamaları geliştirmek için gerektirebilecek yazı tipleri hakkındaki tüm bilgileri ifade etmek için bir dizi yeni API'ye sahiptir.
PANOSE
PANOSE, yazı biçimlerinin tanımlanmasına yönelik görsel bir sınıflandırma sistemidir. PANOSE sınıflandırması aile, serif stili, ağırlık, orantı, karşıtlık, vuruş, kol stili, X yüksekliği gibi bilgiler içerir. Bu bilgi, yazı tipinin görsel stilini açıklar. Benzer PANOSE değerlerine sahip yazı tipleri benzer göründüğü için bu bilgiler önemlidir. Bu, yazı tipinin kullanılamadığı ve uygulamanın kullanılabilir bir yazı tipine geri dönmesi gereken durumlarda çok yararlıdır. Yazı tipleri için PANOSE değerlerini karşılaştırmak, özgün yazı tipine görsel olarak benzer bir yazı tipi seçmenizi sağlar.
Yazı tipinin PANOSE bilgilerine erişmek için idwriteFont1 getpanose yöntemini kullanın ve IDWriteFontFace1arabirimlerini. Bu yöntem, söz konusu yazı tipi için panose bilgilerinin tümünü içeren bir DWRITE_PANOSE numaralandırması döndürür.
Ek Ölçümler
Windows 8'den başlayarak, DirectWrite API'si, yazı tipleri hakkında uygulamanıza yararlı bilgiler sunmak için bir dizi yeni ölçümü de destekler. Bu yeni ölçümler bu bilgileri içerir.
- Sol, Sağ, Üst ve Alt karakter sınırlayıcı kutu ölçümleri.
- Üst simge ve alt simge öğeleri için X ve Y konumlandırması.
- Üst simge ve alt simge öğeleri için X ve Y ölçeklendirme bilgileri.
- Yazı tipinin tipografik ölçümlere sahip olup olmadığı.
Bu bilgilerin tümü IDWriteFontFace1ve IDWriteFont1 arabirimleriyeni GetMetrics yöntemiyle sağlanır. Bu yöntem, tüm bu bilgileri içeren bir DWRITE_FONT_METRICS1 yapısı döndürür.
Şapka İşareti Ölçümleri
Metin düzenleme uygulamaları oluşturmak için metinde gezinen şapka işaretinin nasıl çizildiğini gösteren bilgilere erişmeniz gerekir. Windows 8'den başlayarak DirectWrite, IDWriteFontFace1 ve bu senaryo için IDWriteFont1arabirimleriGetCaretMetrics yöntemini sağlar. GetCaretMetrics, taban çizgisi boyunca şapka işaretinin eğimi ve uzaklığı hakkında bilgi içeren bir DWRITE_CARET_METRICS numaralandırması döndürür.
Bu bilgiler, şapka işaretini italik metinle uygun şekilde kullanabilmek istiyorsanız özellikle yararlıdır.
Monospaced Discoverability
Kullanıcılarınızın bilgisayar kodu yazmasına olanak sağlayan uygulamalar genellikle daha geleneksel yazı tipleri yerine tek aralıklı yazı tipleri kullanır. Bu nedenle geliştirmeyle ilgili uygulamalarda yazı tipi seçimi üzerinde daha fazla denetime sahip olabilirsiniz DirectWrite, bir yazı tipinin API aracılığıyla tek aralıklı olup olmadığını gösterir. IDWriteFontFace1 arabirimindeki IsMonospacedFont yöntemi, yazı tipinin monospaced olup olmadığını gösteren bir Boole döndürür.
Yazı Tipi Adı Eşleştirme
PDF okuyucular gibi zengin metin uygulamalarının içeriğindeki yazı tiplerini sistemdeki yazı tipleriyle eşleştirebilmesi, birden çok biçimdeki yazı tiplerinin tam adlarına erişmesi gerekir. Böylece yazı tiplerini daha iyi eşleştirebilirsiniz DirectWrite birçok biçimde bir yazı tipi hakkında tam adlandırma bilgilerini ifade eden bir numaralandırma içerir.
sistemdeki herhangi bir yazı tipinin tam adını, PostScript adını ve PostScript CID adını almak için DWRITE_INFORMATIONAL_STRING_ID numaralandırmasını kullanırsınız. Bu bilgiler, uygulamanızdaki yazı tiplerini yerel sistemdeki uygun yazı tipleriyle eşleştirmeniz gerektiğinde değerlidir.
Karakter İlerlemeleri
IDWriteFontFace1 ve IDWriteFont1 arabirimlerindeki GetGlyphAdvances yöntemi, hakkında ilerletme bilgilerine ihtiyacınız olan karakter sayısını ve dizinlerini alır ve ardından söz konusu karakterlerin ilerlemelerini döndürür.
Unicode Aralıkları
Kendi yazı tipi seçimini işlemek isteyen uygulamaların, yazı tipi tarafından desteklenen Unicode aralıklarına erişmesi gerekir. Bu şekilde, bir Unicode kod noktası yazı tipi tarafından desteklenmiyorsa, uygulama bu karakteri içeren uygun bir yazı tipi seçebilir. Bu bilgiler olmadan uygulama, mevcut bilgileri görüntülemek için gerekli olan tüm glifleri içermeyen bir yazı tipi kullanabilir.
IDWriteFontFace1 ve IDWriteFont1 arabirimlerindeki GetUnicodeRanges yöntemi, istemciden geçirilen aralık sayısı üst sınırını alır ve yazı tipi tarafından desteklenen gerçek aralıkları döndürür.
EUDC Yazı Tipi Koleksiyonu
IDWriteFactory1 arabiriminde EUDC yazı tipi koleksiyonuna erişen GetEudcFontCollection yöntemini kullanın. Bu yöntem, GetSystemFontCollectionile aynı şekilde çalışır, ancak bunun yerine bir EUDC yazı tipi koleksiyonuna yönelik bir işaretçi döndürür.