【发布时间】:2025-12-31 15:30:12
【问题描述】:
我在 Web 应用程序中有一个字体文件“arial.ttf”,我只能以InputStream 获取其内容。
InputStream inputFont = getResourceAsStream("/resources/arial.ttf");
如何根据InputStream 创建iText BaseFont? createFont 方法不接受它。
BaseFont bf = BaseFont.createFont(inputFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
createFont(InputStream,String,boolean) 不能调用 createFont(java.lang.String,java.lang.String,boolean) 在 BaseFont 中。
【问题讨论】:
-
什么是BaseFont?它不在普通的JDK中。
-
@aryn.galadar 它在 itext 中。 99maas:你不能包括那些信息吗?
-
和
BaseFont没有接受 InputStream 的createFont方法。 -
如果字体在文件系统上不可用,您需要将字体文件读入字节数组并使用 BaseFont.createFont(String, String, boolean, boolean, byte[ ], byte[]) 构造函数。有关更多信息,请参阅 iText javadoc。
标签: java fonts itext inputstream