2015-12-10 132 views
2

我有一個自定義字符串。我可以有動態長度,字體大小和字體家族。一旦我知道這個文本將要佔據多少像素,如果它不適合其父文件,我將能夠截斷它。評估在java中給定font-size和font-family的像素數

在這裏,我不能繪製字符串或框,而我正在評估的像素,但我有所有的信息,如字體大小和字體家族。我正在使用java。

+0

沒有任何問題的答案能幫你嗎?如果是這樣的話,可以隨意接受。 –

回答

1

,如果你需要根據你的labelString的lenght,你可以工作:

lYourLabel.getFontMetrics(lYourLabel.getFont()).stringWidth("Hello World"); 

我使用的方法削減所顯示的字符串,並將其展開「...」內可調整大小的TableColumn

0

這裏有一些方法,我用了這樣的事情:

public static int getTextWidth(Font font, String text) { 
    FontMetrics metrics = new FontMetrics(font) {}; 
    Rectangle2D bounds = metrics.getStringBounds(text, null); 
    return (int) bounds.getWidth(); 
} 

public static int getTextHeight(Font font, String text) { 
    FontMetrics metrics = new FontMetrics(font) {}; 
    Rectangle2D bounds = metrics.getStringBounds(text, null); 
    return (int) bounds.getHeight(); 
}