我有一个自定义字符串。我可以有动态长度、字体大小和字体系列。一旦我知道该文本将占用多少像素,如果它不适合其父级,我将能够截断它。
在这里,我在评估像素时无法绘制字符串或框,但我拥有所有信息,如字体大小和字体系列。我正在使用java。
我有一个自定义字符串。我可以有动态长度、字体大小和字体系列。一旦我知道该文本将占用多少像素,如果它不适合其父级,我将能够截断它。
在这里,我在评估像素时无法绘制字符串或框,但我拥有所有信息,如字体大小和字体系列。我正在使用java。
如果您需要String
基于的长度label
,您可以使用:
lYourLabel.getFontMetrics(lYourLabel.getFont()).stringWidth("Hello World");
我正在使用该方法剪切显示的 String 并在 resizable 中使用“...”扩展它TableColumn
。
这是我用于此类事情的几种方法:
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();
}