99m*_*aas 3 java fonts pdf-generation itext
我需要您的帮助来添加自定义字体“arial.ttf”,该字体存储FontFactory.register在 iText中的方法中我的项目的资源文件夹下。
Windows资源管理器项目中字体路径如下:
public_html\resources\fonts\arial.ttf
引用字体的代码是:
FontFactory.register("/resources/fonts/arial.ttf", "my_bold_font");
Font myBoldFont = FontFactory.getFont("my_bold_font");
Run Code Online (Sandbox Code Playgroud)
但是,当我运行 Java 方法时,它总是给我错误:
java.io.IOException: 找不到 /resources/fonts/arial.ttf 作为文件或资源。
我尝试了不同的路径,例如:
/public_html/resources/fonts/arial.ttf
../resources/fonts/arial.ttf
/fonts/arial.ttf
/arial.ttf
但结果是找不到文件。那么如何引用文件呢?
您可以获取资源文件夹中存在的“字体”的路径,使用contextClassLoader并且可以在FontFactory文件路径中使用。
URL font_path = Thread.currentThread().getContextClassLoader().getResource("fontname");
FontFactory.register(font_path.toString(), "test_font");
Run Code Online (Sandbox Code Playgroud)
我已经测试了这段代码,它工作正常。
| 归档时间: |
|
| 查看次数: |
13379 次 |
| 最近记录: |