fonts - iText7 更改表单字段的字体
问题描述
我正在尝试使用 itext7 填充现有的 PDF。模板已经设置了具有所有属性(大小、颜色、结束等)的字体。我使用该字段的 setValue 方法填写表单:
form.getField(name).setValue(myValue)
结果与模板有很大不同。我试图从字段中获取有关字体的信息,iText 将其设置为 Helvetica,大小设置为 8.64,没有颜色。
我知道我可以手动设置字体,但我更喜欢使用已经在我的模板中设置的字体。有谁知道我怎样才能做到这一点?谢谢。
解决方案
请试试这个:
// Get your field and save it in a variable
var field = form.getField(name);
// Get field's font and size
PdfFont font = field.GetFont();
float fontSize = field.GetFontSize();
// Apply style to your field
field.SetFontAndSize(font, fontSize);
// Set a value to your field
field.setValue(myValue);
推荐阅读
- html - 如何根据屏幕大小调整经过验证的 PayPal 图像大小
- reactjs - 如何以数组格式存储图像url
- mysql - 如何根据 MySQL 中的多个列从多个表中获取唯一记录?
- php - 在 Ajax CodeIgniter 中出现错误 403 Forbidden
- android - 为 exoplayer 启用缓存
- mysql - 带有 6 LEFT JOIN 的 Maria DB 查询非常慢
- mysql - MariaDB 的 Elasticsearch 数据完整性问题
- big-o - 在大 O 表示法中包含二次函数
- scala - 在 Scala 中是否可以定义一个依赖类型,例如具有特定第一个元素、最后一个元素或具有特定长度的列表的列表?
- python - 如何在 Flake8 Plugin 中明确区分模型类和普通类名之间的规则检查?