泰山JDK8获取(宋体,12)中文问号?宽度为0的问题

简介: 泰山JDK8获取(宋体,12)中文问号?宽度为0的问题

调用堆栈

FileFontStrike.getGlyphAdvance(int, boolean) line: 705  
FileFontStrike.getGlyphAdvance(int) line: 693 
FileFontStrike.getCodePointAdvance(int) line: 812 
FontDesignMetrics.handleCharWidth(int) line: 417  
FontDesignMetrics.charWidthFloat(char) line: 447  
FontDesignMetrics.charWidth(char) line: 439

代码分析

getCodePointAdvance()处,mapper.charToGlyph(cp)得到?的图元索引(66267)。
getGlyphAdvance():
if (glyphCode >= INVISIBLE_GLYPHS) {
    return 0f;
}
INVISIBLE_GLYPHS=65534


这么一判断,自然为0了。


这是因为

目录
相关文章
用word快速将数字字体换成新罗马详细简单方法
用word快速将数字字体换成新罗马详细简单方法
3892 0
用word快速将数字字体换成新罗马详细简单方法
|
缓存 Cloud Native Go
Ghostscript 字体处理深究: 解决字体缺失问题
Ghostscript 字体处理深究: 解决字体缺失问题
301 0
Markdown (CSDN) MD编辑器(二)- 文本样式(更改字体、字体大小、字体颜色、加粗、斜体、高亮、删除线)
Markdown (CSDN) MD编辑器(二)- 文本样式(更改字体、字体大小、字体颜色、加粗、斜体、高亮、删除线)
1144 0
Markdown (CSDN) MD编辑器(二)- 文本样式(更改字体、字体大小、字体颜色、加粗、斜体、高亮、删除线)
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
|
程序员 API iOS开发
iOS开发:字符串设置指定内容的文字颜色、文字大小、文字字体类型
在iOS开发过程中,会有一些为了提高APP的视觉效果而设置的特别一点的效果,比如一行文字需要自定义不同的颜色和文字大小,这就用到通过富文本来设置字符串的颜色、大小和文字类型。这篇博文我打算只介绍怎么设置指定内容的一些文字属性设置,如果之前看过我写的博文,就会发现有一篇类似介绍通过富文本来设置字符串内容的博文,但是那篇是综合性的,包括介绍button的,以及UItextfield的设置,所以在这里我只介绍怎么设置字符串指定位置的一些自定义设置的方法,如有不妥之处,欢迎指正。
610 0
|
XML 数据格式
关于字体编码的一些知识,并带大家制作一套字体。(上)
关于字体编码的一些知识,并带大家制作一套字体。
关于字体编码的一些知识,并带大家制作一套字体。(上)
泰山JDK8新实现的一个字体斜体效果
泰山JDK8新实现的一个字体斜体效果
106 0
泰山JDK8新实现的一个字体斜体效果
PyQt5 技巧篇-便于文字排版的等宽字体推荐:Source Code Pro的中文为英文两倍宽字体
PyQt5 技巧篇-便于文字排版的等宽字体推荐:Source Code Pro的中文为英文两倍宽字体
382 0
PyQt5 技巧篇-便于文字排版的等宽字体推荐:Source Code Pro的中文为英文两倍宽字体