泰山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了。


这是因为

目录
相关文章
|
C语言 存储
C语言—部分库函数的模拟实现
C语言—部分库函数的模拟实现
|
机器学习/深度学习 人工智能 搜索推荐
AI在医疗诊断中的应用与前景
AI技术在医疗诊断领域的应用不仅提升了诊断的准确性和效率,还为个性化治疗和预防医学提供了新的可能性。本文探讨了AI在影像分析、疾病预测、个性化治疗和健康管理等方面的实践和未来前景,指出了当前面临的挑战与解决方向。
423 4
|
12月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI在文本生成中的应用与挑战
【9月更文挑战第11天】本文将深入探讨人工智能在文本生成领域的应用及其面临的挑战。我们将通过实际案例分析,了解当前技术如何影响内容创作,并讨论未来可能的发展方向。文章旨在为读者提供一个关于AI文本生成技术的全面视角,包括其优势、局限及潜在影响。
|
弹性计算 网络安全
幻兽帕鲁服务器搭建实践及优化经验分享
Pocketpair出品的生存类游戏《幻兽帕鲁》最近非常火,最高在线人数已逼近200万,是有可能打破CSGO和PUBG记录的一款现象级游戏。官方服务器亚历山大,游戏开发商也提供了搭建私人专用服务器的方案,既可以保证稳定的游戏体验,也可以和朋友一起联机游戏,而且还能自定义经验翻倍等游戏里的一些选项。 那么如何快速拥有一个可以跟小伙伴们愉快玩耍的服务器呢?本文将为您详细介绍如何在阿里云上快速搭建幻兽帕鲁联机服务器。您只需按照页面提示选择相关配置,即可实现以下步骤的自动化:服务器创建、网络端口设置、防火墙配置以及游戏环境安装。整个过程仅需2-3分钟,即可轻松完成,无需手动配置。
|
监控 数据可视化 Java
高效流程引擎:深入探索 Activiti 工作流引擎
在现代的企业环境中,业务流程的自动化和优化变得越来越重要。Activiti,作为一款轻量级、可嵌入的工作流引擎,为企业提供了一种高效的方式来管理和执行各种业务流程。本文将为您详细介绍 Activiti 的核心概念、特性以及在业务流程管理中的应用。
744 0
|
Linux 编译器 开发工具
Linux编译器-gcc/g++
Linux编译器-gcc/g++
107 0
axios
文章目录 引入 post请求 get请求 实例
107 0
|
存储 JSON 分布式计算
【数据库架构】Apache Couchdb 最终一致性
【数据库架构】Apache Couchdb 最终一致性
|
XML 安全 Java
网络安全-XXE(XML外部实体注入)原理、攻击及防御
网络安全-XXE(XML外部实体注入)原理、攻击及防御
659 0
网络安全-XXE(XML外部实体注入)原理、攻击及防御
jira学习案例12-ts知识梳理,总结和提高2
jira学习案例12-ts知识梳理,总结和提高2
152 0
jira学习案例12-ts知识梳理,总结和提高2