Java:字体的磅值与其呈现范围之间是否存在线性相关性?

标签 java fonts drawing font-size graphics2d

假设使用10 号字体 呈现的字符串的宽度为200 像素。如果我用15 号字体(增加 50%)绘制同一个字符串,它的渲染宽度是否也会增加 50%(达到 300 像素)?

(当然,这假设字体和呈现文本的 Graphics2D 没有其他变化。)

换句话说,字体的点大小和呈现的文本大小之间是否存在直接的线性关系?还是有其他变量阻止我做出任何此类假设?

最佳答案

您的假设很接近。

但是,字母之间的间距并不总是精确缩放。我相信它与有时有余数的整数除法有关,但我有一段时间没有看过 Java FontMetrics 类代码。

最安全的做法是始终创建具有适当字体大小的新 Font,并调用 FontMetrics 类的 getStringBounds 方法。

关于Java:字体的磅值与其呈现范围之间是否存在线性相关性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5833017/

相关文章:

java - 为 JAXB.unmarshal() 提取 XML 节点的最简单方法是什么?

java - 我好像是在JPanel下画画的

java - 如何删除插入到 TextView 的附加文本

html - 如何将在线字体链接转换为本地字体链接?

c# - 如何创建可以放置、移动和连接项目的示意图?

css - CSS绘图和Zepto/Phonegap有问题吗?

java - 在 IntelliJ 中清理 Play 框架构建

android改变listview的字体和颜色

pdf - 使用自定义字体从 PDF 复制文本

android - Canvas : Path with negative and large positive numbers