2015-02-17 18 views
5

OpenGL'de kullanmak için FreeType API'nın temellerini öğreniyorum ve bir şey hakkında kafam karıştı. Yazı tipini yüklersiniz, sonra her bir glifi tek tek fontun glif yuvasına yüklersiniz. Glif, x ve y alanına sahip advance dahil olmak üzere bir dizi alana sahiptir. Şimdi, y'un fazla kullanılmadığını ancak y'un kullanıldığı bir durumda olduğumu söylediği anladığım kadarıyla, anlayamadığım şey, her karakterin glif yuvasına izolasyon olarak işlendiğidir. Böylece, glif, sonraki tüm karakterlerin belirli bir kesirli ofset ile işlenmesi gerektiğini nasıl anlayabilir? Ya art arda aynı karaktere sahip olsaydınız? Son metin bloğunuzda yavaş bir çapraz eğim veya düşüşle sonuçlanmayacak mıydınız? Normal bir render durumunda (FT_LOAD_VERTICAL_LAYOUT bunu tetikleyecektir.) Asya'da eskisi gibiFreeType - bana yardım et glif'in advance.y özelliği

cevap

1

Tarihsel advance.y, dikey metin için çoğunlukla, sen advance.x ve advance.y için aynı zamanda hem sıfır olmayan değerlere çıkmamalı.

Ancak Freetype'ı daha genel bir şekilde kullanmak da yararlıdır. Latince dikey metni 30 ° eğimli bir şekilde yazmak istiyorsanız, yine de aynı yapıları kullanabilirsiniz: her bir glif için 30 ° eğim matrisini (FT_Set_Transform aracılığıyla) uygularsınız; ve sonuç gerçekten de çapraz bir eğime sahip olacak; amaçlandığı gibi!

+0

Teşekkürler, benim aradığım şey buydu. –