2012-10-25 101 views
3

我有一個字體對象和一個字符串。我想返回一個Shape對象,它是String的表示形式。我有一大堆其他類將顯示字符串並照顧它。從Java中的字體對象創建一個形狀對象

我很難找出如何做到這一點,當我有一個圖形/ graphics2d對象。任何幫助?我搜索了網絡,但無法找到有用的鏈接。

public class SpecializationOfTester extends ParentTester { 

    private String  str; 
    private Font  font; 


    public SpecializationOfTester(String str, Font font) { 
     this.font = font; 
     this.str = str; 
    } 

    public Shape getShape() 
    { 
     Shape   s; 
     // 
     // 
     return s; 
    } 

} 

感謝

+0

你總是可以創建一個'Graphics2d'對象。 –

+0

我可以使用該形狀我最終結束並將其添加到不同的圖形對象? – Rell3oT

+0

我想是這樣。在最糟糕的情況下,一個'Graphics2D'對象將被'Shape'所佔據並消耗一些內存。 –

回答

7

您可以使用GlyphVector#getOutline(),提到here。您可以在BufferedImage中創建圖形上下文,如Using Headless Mode in the Java SE Platform中所述。

也看到這些吸引人的例子:

+2

有一個相關示例[此處](http://stackoverflow.com/a/6296381/230513)。 – trashgod

+2

[也是一個相關示例](http://stackoverflow.com/a/2466283/646634),它從圖形對象中獲取'Shape'。 – Brian

+0

+1很好的答案我從來不知道那個... –