当前位置: 首页 > 面试题库 >

如何计算像素的字符串宽度?

艾飞宇
2023-03-14
问题内容

如何String在Java中以像素为单位计算a的宽度? 例如,我有一个字符串说“ Hello World!”。
考虑到其字体系列和大小,它的像素长度是多少?


问题答案:

有多种方法可以实现想要的目标,例如,基于要实现的目标。

BufferedImage img = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = img.createGraphics();
FontMetrics fm = g2d.getFontMetrics();
System.out.println(fm.stringWidth("This is a simple test"));
g2d.dispose();

但这仅BufferedImageGraphics上下文相关,并且不会转换为屏幕或打印机之类的内容。

但是,只要您具有Graphics上下文,就可以实现相同的结果。

显然,此示例使用了为Graphics上下文安装的默认字体,如果需要,可以更改…



 类似资料:
  • 问题内容: 在Java FX 2.2中似乎没有API调用来计算文本字符串的宽度(以像素为单位)。在其他论坛上也有解决方法的建议,但是我创建或查找使用默认字体或其他方式返回String宽度的任何代码的工作都失败了。任何帮助,将不胜感激。 问题答案: 如果仅在不使用CSS的情况下测量默认字体,请执行以下操作: 将要测量的字符串放在Text对象中。 获取Text对象的布局范围的宽度。 如果你需要应用CS

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

  • 如何在Java中计算的宽度(以像素为单位)?例如,我有一个字符串说“你好世界!它的长度是多少(以像素为单位),还要考虑它的字体系列和大小?

  • 问题内容: 我想在 android中 以像素为单位计算字符串字体宽度。我有字符串数组,我将所有这些数组元素附加到一个字符串中。所以我必须在两个连续的数组元素之间设置固定的间距。我将最后一个字符串放入textview中。最后,我将这个textview添加到tablerow中。简而言之,我想查看带有标题和值的表结构。我在这里看到过很多帖子,但没有得到解决方案。 提前致谢…!!! 问题答案: 似乎上有可

  • 问题内容: 我正在使用Java绘制一些文本,但是对我来说很难计算字符串的宽度。例如:zheng中国…这个字符串要占用多长时间? 问题答案: 对于单个字符串,您可以获取给定图形字体的度量,然后使用该度量来计算字符串大小。例如: 如果您有更复杂的文本布局要求,例如在给定宽度内流动一段文本,则可以创建一个对象,例如此示例(来自docs):

  • 我希望能够根据每个字符串所需的像素数(它们不需要相同大小)来设置DataGrid单元格的宽度。我没有在谷歌上遇到这个,所以想知道这是否可能,基于TornadoFX使用的默认字体等。我想图书馆的某个地方正在跟踪这个