2010-10-21 53 views
2

我已經想出瞭如何在使用Java繪製該屏幕之前獲取文本字符串的形狀,例如使用TextLayout類[1]。然而,我只能找到一種方法來獲得整個文本的形狀。我需要爲文字中的每個角色設置一個形狀。有人知道如何獲得每個角色的形狀的優雅方式嗎?使用Java圖形處理字符串中每個字符的形狀

[1] http://download.oracle.com/javase/tutorial/2d/advanced/transforming.html

+0

字體也可以使用font.deriveFont(AffineTransformation在)轉化的,所以我可以使用AttributedString並附加不同的字體來每個字符..不知道這是一個好主意嗎? – Nils 2010-10-21 09:15:09

回答

2

Font得到一個GlyphVector對象。返回的GlyphVector將包含用於表示指定文本的字形序列。

一旦您有GlyphVector,您可以分別通過getGlyphMetrics()getGlyphOutline()方法獲得每個單獨的字形的詳細度量或邊界形狀。

(注:getGlyphCharIndex()方法可用於發現的字形字符映射。)

+0

是的,但它給了我所有的字符組成的glyhps,沒有告訴我哪個字形屬於哪個字符..或者我錯過了什麼? – Nils 2010-10-21 09:06:48

+1

您可以使用'getGlyphCharIndex()'方法查找字符映射的字形。 – Grodriguez 2010-10-21 09:13:25

+0

謝謝,我錯過了! – Nils 2010-10-21 09:15:36