在Java中嵌入字体

Sup*_*tar 13 java fonts

我有一个自定义字体,我希望在Java程序中显示,用户可以在其中查看它而无需安装它.有谁知道这是怎么做到的吗?

工作方案


我已经实现了以下内容:

font = java.awt.Font.createFont(java.awt.Font.TRUETYPE_FONT, new java.io.File(Clazz.class.getResource("/resources/segoescb.ttf").toURI()));
font = font.deriveFont(11.0F);
Run Code Online (Sandbox Code Playgroud)

Sea*_*oyd 12

我从来没有做过,但似乎你想要的方法

导入字体

Font createFont(int fontFormat, InputStream fontStream)

或者

Font createFont(int fontFormat, File fontFile)

int参数是Font.TRUETYPE_FONTFont.TYPE1_FONT,而InputStreamFile参数包含字体的二进制数据.

导入后使用字体:

要使Font可用于Font构造函数,必须在GraphicsEnviroment调用时注册返回的Font registerFont(Font).

  • 对于JAR文件,使用`createFont`版本的`createFont`而不是`File`版本. (2认同)