首页 > 解决方案 > 在不重新启动 Java 应用程序的情况下将新字体添加到 Apache fop

问题描述

我们有一个使用 Apache FOP 创建 PDF 的 Java 应用程序。由于此 Java 应用程序是 dockerised ,因此会安装字体文件夹,并且每当要添加新字体时,它们都会被复制到此已安装的文件夹中。但是除非我们重新启动应用程序,否则 FOP 无法识别添加的新字体。

  1. 是因为 JVM 在初始化期间与 Java App 和 FOP 共享字体缓存吗?
  2. 甚至可以在不重新启动应用程序的情况下更新 FOP 的字体缓存吗?
  3. 尝试使用FontManager.UpdateReferencedFonts方法更新引用的字体,但它不反映新添加的字体。

很抱歉没有发布代码或更多详细信息,只是想知道 Java 或 FOP 方面是否存在任何限制,即无法使用应用程序启动后添加的字体。

标签: javafontsjvmapache-fopbatik

解决方案


推荐阅读