下面的代码完成了它的工作,但每次运行时都会在 temp 目录中保留字体文件的副本。这些文件被命名为+~JF7154903081130224445.tmp,其中每个创建的文件的数字似乎是随机的。
InputStream fontStream = this.getClass().getResourceAsStream("handsean.ttf");
Font baseFont = Font.createFont(Font.TRUETYPE_FONT, fontStream);
fontStream.close();
我在 sun.com 的论坛和网络上的其他资源中发现了多年的讨论,这被认为是 JDK 中的一个错误,从 1.5.0_06 升级到 1.5.0_08 可以解决问题;但是,我使用的版本是更高版本(1.6.0_13)。
我尝试通过在字体相关操作完成后删除文件来解决问题,但当时文件被锁定。只有在 Web 应用程序停止后才能删除文件。
有人对此有解决方案吗?