Java JRE/fontconfig默认排除范围。无法显示某些Unicode字符
我试图在JLabel中显示带有点的Unicode字符\u1e41 m,结果是一个小正方形,表示无法显示该字符。在其他默认windows应用程序记事本等中,这是可能的。我发现在所有JRE安装文件fontconfig.properties.src中,该字符位于第一个排除范围内: 我将此行更改为: 排除。字母=0700-1e40、1e42-1e9f、1f00-20ab、20ad-f8ff 并将文件fontconfig.properties.src重命名为fontconfig.properties。这使我的应用程序能够显示此字符。现在,我想知道: 为什么默认情况下不包括此范围? 是否有任何方法可以在不更改JRE的情况下显示此字符,或者可以通过编程方式更改此设置? 如果不可能使用2,那么像我那样设置fontconfig文件是否有危险?我问这个问题,因为我认为fontconfig文件可能包含对我的应用程序有副作用的设置。或者该文件是否始终包含JRE的默认设置,因此如果不进行修改就重命名该文件,则不会产生任何效果? 供参考 计算机:Windows 7 64位 JRE版本:1.7.0、1.6.0_25、1.6.0._25/所有32位Java JRE/fontconfig默认排除范围。无法显示某些Unicode字符,java,fontconfig,Java,Fontconfig,我试图在JLabel中显示带有点的Unicode字符\u1e41 m,结果是一个小正方形,表示无法显示该字符。在其他默认windows应用程序记事本等中,这是可能的。我发现在所有JRE安装文件fontconfig.properties.src中,该字符位于第一个排除范围内: 我将此行更改为: 排除。字母=0700-1e40、1e42-1e9f、1f00-20ab、20ad-f8ff 并将文件fontconfig.properties.src重命名为fontconfig.properties。这使
exclusion.alphabetic=0700-1e9f,1f00-20ab,20ad-f8ff