0
点赞
收藏
分享

微信扫一扫

关于JDK/Java支持TTC字体的思路


  如前面博文所述,其实JDK是能够认识TTC字体文件的。问题在哪里?吾以为有三个:

  • 没有预先读取文件中的所有字体名。

没有这个东西,外部字体名传递进来,也是傻眼。

  • 接上,新建字体时,传递的字体索引是0,没有传递字体名。
  • 接口参数问题。

前面两个问题解决了,这个就容易了。

  开始吾想自己解释字体文件。于是找了FontForge,结果编译没有通过……回头一想,JDK已经支持TTC,吾何不在此基础上处理?

  • 增加一个TrueTypeFont构造器,获取所有字体名。
  • 增加一个TrueTypeFont构造器,把字体索引换成字体名。
  • 内部构造器中增加字体名参数。

  如果字体名有效,则忽略字体索引。

  构造器中,先把字体名全部读取出来。然后再从字体名中找到索引,重新初始化。这个办法是比较笨的,以后考虑优化一下处理。

  听着是不是很简单?做起来好像也不难,因为咱有泰山JDK啊。

举报

相关推荐

0 条评论