如何在Java中以编程方式设置回退字体?

时间:2011-09-09 07:36:13

标签: java fonts locale fallback tamil

我想将我的应用本地化为我的泰米尔语。我很遗憾Java支持only Hindi out of all Indian Languages“开箱即用。”

我在互联网上搜索了一些解决方法。我从John O'Conner's blog postNaotoj Sato's blog post了解到我将使用一种名为“字体后备”的技术。

我手动将适用于Windows的“LATHA.TTF”Tamil字体复制到/ jre / lib / fonts / fallback目录。

有效!但是如何以编程方式将字体复制到我的用户的/ jre / lib / fonts / fallback目录?

我想添加一个代码,在第一次启动时将包含的字体复制到该回退目录,如果它还没有。它是否会导致任何权限问题,如“写入访问被拒绝”到该文件夹​​或什么?

或者有没有办法让应用程序搜索应用程序目录的后备字体而不是/ jre / lib / fonts / fallback?

请注意,只有选择了Tamil语言时,应用才能使用此LATHA字体,所有其他语言的默认字体都必须使用此字体。

请发表您的意见。

1 个答案:

答案 0 :(得分:1)

如果没有管理员权限的系统位置,似乎无法以编程方式将后备字体复制到jre。它仅在jre位于其他位置时才有效。所以我最终决定放一个自述文件,要求用户手动复制字体,如果他们想要的话。期待Java很快就会支持泰米尔语。

希望这对于任何搜索此类内容的人都有用。