我已經想出瞭如何在使用Java繪製該屏幕之前獲取文本字符串的形狀,例如使用TextLayout類[1]。然而,我只能找到一種方法來獲得整個文本的形狀。我需要爲文字中的每個角色設置一個形狀。有人知道如何獲得每個角色的形狀的優雅方式嗎?使用Java圖形處理字符串中每個字符的形狀
[1] http://download.oracle.com/javase/tutorial/2d/advanced/transforming.html
我已經想出瞭如何在使用Java繪製該屏幕之前獲取文本字符串的形狀,例如使用TextLayout類[1]。然而,我只能找到一種方法來獲得整個文本的形狀。我需要爲文字中的每個角色設置一個形狀。有人知道如何獲得每個角色的形狀的優雅方式嗎?使用Java圖形處理字符串中每個字符的形狀
[1] http://download.oracle.com/javase/tutorial/2d/advanced/transforming.html
從Font
得到一個GlyphVector
對象。返回的GlyphVector
將包含用於表示指定文本的字形序列。
一旦您有GlyphVector
,您可以分別通過getGlyphMetrics()
和getGlyphOutline()
方法獲得每個單獨的字形的詳細度量或邊界形狀。
(注:getGlyphCharIndex()
方法可用於發現的字形字符映射。)
是的,但它給了我所有的字符組成的glyhps,沒有告訴我哪個字形屬於哪個字符..或者我錯過了什麼? – Nils 2010-10-21 09:06:48
您可以使用'getGlyphCharIndex()'方法查找字符映射的字形。 – Grodriguez 2010-10-21 09:13:25
謝謝,我錯過了! – Nils 2010-10-21 09:15:36
字體也可以使用font.deriveFont(AffineTransformation在)轉化的,所以我可以使用AttributedString並附加不同的字體來每個字符..不知道這是一個好主意嗎? – Nils 2010-10-21 09:15:09