JDK中字符的宽度计算流程

Posted 柳鲲鹏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDK中字符的宽度计算流程相关的知识,希望对你有一定的参考价值。

  • JAVA调用流程如下

FontDesignMetrics.charWidth(char) line: 441    
FontDesignMetrics.getLatinCharWidth(char) line: 425    
FontDesignMetrics.handleCharWidth(int) line: 416    
FileFontStrike.getCodePointAdvance(int) line: 732    
FileFontStrike.getGlyphAdvance(int) line: 613    
FileFontStrike.getGlyphAdvance(int, boolean) line: 711    
TrueTypeFont(FileFont).getGlyphAdvance(long, int) line: 190    
FreetypeFontScaler.getGlyphAdvance(long, int) line: 88    
之后是本地函数getGlyphAdvanceNative()

  • getGlyphAdvanceNative

GlyphInfo.advanceX

以上是关于JDK中字符的宽度计算流程的主要内容,如果未能解决你的问题,请参考以下文章

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

根据字符长度怎样计算出需要显示的label宽度高度

用Java计算字符串的显示宽度

为啥在 Tkinter 中计算的字符串的像素宽度和高度因平台而异?

IDEA编辑器中的字符宽度不同

等宽字符的像素宽度