首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在JavaFX中计算字符串的像素宽度?

如何在JavaFX中计算字符串的像素宽度?
EN

Stack Overflow用户
提问于 2012-10-23 00:30:05
回答 2查看 38K关注 0票数 32

在Java FX 2.2中似乎没有API调用来计算文本字符串的宽度(以像素为单位)。在其他论坛上已经有了解决办法的建议,但我创建或查找任何返回字符串宽度的代码的努力都失败了,无论是使用默认字体还是其他方式。任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2014-01-24 00:57:30

这个解决方案一直持续到java 8:

代码语言:javascript
复制
float width = com.sun.javafx.tk.Toolkit.getToolkit().getFontLoader().computeStringWidth("", gc.getFont());
float height = com.sun.javafx.tk.Toolkit.getToolkit().getFontLoader().getFontMetrics(gc.getFont()).getLineHeight();

这些类已经被移除,并且在较新的java版本中不可用!

票数 15
EN

Stack Overflow用户

发布于 2016-12-26 11:27:11

我试过这个:

代码语言:javascript
复制
Text theText = new Text(theLabel.getText());
theText.setFont(theLabel.getFont());
double width = theText.getBoundsInLocal().getWidth();

而且它似乎运行得很好。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13015698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档