2011-07-19 21 views
6

Müşterim tarafından sağlanan tüm metinler için piksel cinsinden uzunlukları hesaplamalıyım. Sorun yalnızca bir düzenli yazı tipi sağladı ve italik stilin Android tarafından oluşturulması gerekiyor. Bilinen bir Android hatası, italik (italik olarak yazılmış) fontlar için TextView'in genişliğinin doğru hesaplanmadığı ve metnin sonunun kesildiği yönündedir.Android: İtalik render yazı tipleri için measureText on Paint nesnesi

Bu italik metinlerin uzunluğunu doğru olarak nasıl hesaplayacağınıza dair bir fikriniz var mı?

Şimdiye kadar measureText ve getTextWidths yöntemlerini denedim, ancak hatanın Android kaynaklarında bir yerde olduğunu düşünüyorum çünkü italik ve normal metinlerin uzunluğu aynıdır.

Italik yazı tipi olmadığında ve görüntülenmesi gerektiğinde, TextView kaynak kodunda, TextPaint nesnesinde skewX parametresinin ayarlandığını buldum. Değeri -0.25f'dir.

Bu parametrenin ne olduğunu ve bu skewX faktörüne göre eksik pikselleri nasıl hesaplayabileceğinizi biliyor musunuz?

+0

Bir çözüm buldunuz mu? – Igor

cevap

0

Metni ölçmek için ince bir alan "\u2009" kullanabilirsiniz. Sonra çizmeden önce düzeltin. Metin merkezini hizalamak en iyi sonucu verebilir.