我正在寫一個iPhone應用程序,需要呈現包含diacriticals(波浪線,重音等)的i18n文本。 Apple提供的UIFont類可用於獲取給定的字體/字體大小組合的領先,上升,下降等。UIFont和Diacriticals
問題是,此信息不能準確反映變音符號。具體而言,大寫字母的變音符號通常超過lineHeight(以前稱爲領先的UIFont屬性)。
整個框架都存在同樣的問題, NSString:sizeWithFont也有同樣的問題。
我需要知道文本的真正邊界框,因爲我使用的OpenGL沒有文本繪圖支持,因此需要將文本呈現到紋理。
目前,我使用黑客來解決這個問題。有沒有更好的辦法?
「懶惰的方式是渲染紋理,在頂部和底部留有邊距(0.5行?1行?),而不必太在意某些透明像素的額外開銷。」 是的,這正是我正在做的。感謝您的迴應。 – 2010-08-03 18:10:14