java - Canvas 大小 - 文本渲染

标签 java text rendering 2d awt

有什么方法可以确定文本渲染的最佳 Canvas 大小吗?

输入是一个带有换行符的字符串,我想在使用两种字体类型(比例和非比例)时构建 Canvas 以适合(无插图),这些类型永远不会混合。

谢谢。

最佳答案

来自Java Tutorial Measuring Text

 FontMetrics metrics = graphics.getFontMetrics(font);
 int hgt = metrics.getHeight();
 int adv = metrics.stringWidth(text);
 Dimension size = new Dimension(adv+2, hgt+2);

您可能需要逐行执行此操作,并检测字体是否在行与行之间发生变化。

关于java - Canvas 大小 - 文本渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8455585/

相关文章:

Java 8 获取列表中的所有元素

java - 用于调用 bean 上的自定义 setter 的 Apache Digester XML 规则

text - 显式语义分析

swift - 我的代码在 textViewDidChangeSelection 中插入两个字符而不是一个

ruby - 解析具有不同分隔符的文本 - 带分组

java - 将 ADT bundle 从一台 ubuntu 计算机复制到另一台 eclipse 后无法打开

java - 如何在 IntelliJ 中停止通配符 Java 包导入

javascript - 根据选定的输入数字迭代 v-for

java - JTree 节点的渲染和字体变化

c# - 最快的 GDI+ 渲染设置是什么?