泰山OFFICE技术讲座:JDK字体支持编码的研究2

Posted 柳鲲鹏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了泰山OFFICE技术讲座:JDK字体支持编码的研究2相关的知识,希望对你有一定的参考价值。

  • 测试语句
Font font = Font.createFont(Font.TRUETYPE_FONT, new File(fontPathTest));
  • 先调用setCJKSupport()

从os2Table信息中读取        ulUnicodeRange1/ ulUnicodeRange2/ ulUnicodeRange3/ ulUnicodeRange4,然后:

        supportsCJK = ((ulUnicodeRange2 & 0x29bf0000) != 0);
        supportsJA = ((ulUnicodeRange2 & 0x60000) != 0);

从这里可以看到,字体文件专门有标志标明支持什么语言。

  • 再调用supportsEncoding()

getCodePage()。调试中得到的是utf-8,JDK默认编码?

        ulCodePageRange1 = buffer.getInt(78); /* ulCodePageRange1 */
        ulCodePageRange2 = buffer.getInt(82); /* ulCodePageRange2 */

至此,相关信息处理完成。

  • supportsJA/supportsCJK

以上是关于泰山OFFICE技术讲座:JDK字体支持编码的研究2的主要内容,如果未能解决你的问题,请参考以下文章

泰山OFFICE技术讲座:字体的缩放研究及效果

泰山OFFICE技术讲座:中英文间隔,间隔以哪个字体为准?

泰山OFFICE技术讲座:中英文间隔,间隔以哪个字体为准?

泰山OFFICE技术讲座:字体的位置研究1

泰山OFFICE技术讲座:字体的间距研究1

泰山OFFICE技术讲座:等线字体高度的深入研究