我在JVM上运行Scala / Java服务。这是一个呈现图像的图形应用程序。
当它正在运行时,我想添加它可以使用的字体。所以我安装了字体,所有东西都很棒。除了我必须重新启动服务以使字体工作。
那么,如何让JVM加载我安装的新字体而不重新启动呢?
答案 0 :(得分:0)
我只能猜测你需要什么,并提供基本的例子,在我们可以提供更多帮助之前,你需要向我们提供更多细节,或者你当前如何安装/加载字体的例子,以及你如何申请它是你渲染的图像。
每次运行应用程序时是否安装了字体?不应该是这种情况,你可以在Java中做任何事情。
Java自己加载大多数字体,因此如果您使用的是已安装/现有的字体,那么您可以按正常方式加载和使用它,如下所示:
Font font = new Font("Dialog", Font.PLAIN, 12);
your2Dgraphics.setFont(font);
your2Dgraphics.drawString(String str, int x, int y)
如果你想从程序或其他目录中手动加载字体,那么你应该这样做:
GraphicsEnvironment graphicsEnviro = GraphicsEnvironment.getLocalGraphicsEnvironment();
graphicsEnviro.registerFont(Font.TRUETYPE_FONT, new File("myFontToLoad.ttf"));
一旦启动程序,将字体加载到内存中,因此每次需要使用时都不必从文件加载。
我建议您快速阅读Java中的字体,请看这里: