2011-07-19 39 views
6

我需要計算以像素爲單位的長度爲我的客戶端提供的所有文本。 問題是他們只提供一種常規字體,斜體樣式必須由Android渲染。一個已知的Android錯誤是對於斜體(呈斜體)字體,TextView的寬度計算不正確,文本的末尾被剪切。安卓:噴漆的對象上measureText斜體字體渲染

你對如何正確地計算這些斜體文本長度的任何想法?

到目前爲止,我已經試過measureText和getTextWidths方法,但我認爲是錯誤的地方在Android源,因爲斜體和正常文本的長度是相同的。

我發現,當沒有使用斜體並具有要被渲染,然後在TextView的源代碼,在TextPaint對象如果skewX參數設置。它的值是-0.25f。

你知道這是什麼參數,也許如何計算在此基礎上如果skewX因素缺失的像素?

+0

您是否找到解決方案? – Igor

回答

0

您可以使用一個狹窄的空間"\u2009"要測量的文本。然後在繪製之前修剪它。對齊文本中心可能會給出最佳結果。