itext - 使用 ITextRenderer 进行飞碟字体注册
问题描述
我正在使用飞碟使用 iText-2.1.7 从 html 生成 pdf。
对于我打印的每份文件,我都会:
ITextRenderer renderer = new ITextRenderer();
对于我使用的每种字体:
renderer.getFontResolver().addFont(font.getPath(),font.getName(), BaseFont.CP1252, BaseFont.EMBEDDED, null);
然后是创建pdf的其余代码:
renderer.getSharedContext().setReplacedElementFactory(...)
renderer.getSharedContext().setUserAgentCallback(...);
renderer.setDocument(xhtmlDom,null);
renderer.layout();
renderer.createPDF(byteArrayOutputStream);
因此,对于每个文档,我一次又一次地注册所有字体......
这是绝对必要的吗?我可以使用任何字体缓存服务或类似的东西吗?
非常感谢!
解决方案
推荐阅读
- php - 如何获取商店清单产品WC WP中每一项的产品ID
- android - 如何将设备连接到 Xamarin.Forms 项目?
- javascript - 在 JavaScript 中将 Math.cos 函数的度数转换为弧度的问题
- pandas - 使用数据框和 ndarray 进行回归有什么区别?
- html - 保持页脚底部
- format - 如何在 conses 列表上使用格式的迭代能力
- java - “JVM从操作系统请求的内存必须是连续的”是什么意思?
- javascript - 从firestore过滤数据到离子应用程序的问题
- mysql - 规范化-检查下表是否在 BCNF 中
- angular - 如何以角度在页面上制作过滤器