gpt4 book ai didi

java - 当我以 pdf 形式向占位符插入值时,如何设置 iText 的编码?

转载 作者:行者123 更新时间:2023-11-30 07:09:06 24 4
gpt4 key购买 nike

我尝试填写 pdf 表格。我有模板并填写我的数据。

PdfReader reader = new PdfReader(src);
FontFactory.register(BaseFont.IDENTITY_H);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
AcroFields form = stamper.getAcroFields();
String[] split = reportDTO.note.split("\\n");
form.setField("field1", "Значение");//value is some text in UTF-8

但是我的值没有插入到field1 palceholder中。它是空的。但如果以英语为例

form.setField("field1", "some text");

此文本插入成功。

如何设置普通 View 中插入文本的编码?

最佳答案

解决方案之一:

1)下载包含unicode中所有符号的字体(您使用的)

2) 使用编码(Cp1251、Cp1250、utf8 等)创建字体

3)您应该通过在表单变量上使用 AcroFields 的 addSubstitutionFont 方法来添加字体。

    public static final String **FONT = "resources/fonts/ARIALUNI.TTF";**

somemethod(){
**Font font = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);**
BaseFont baseFont = font.getBaseFont();

PdfStamper stamper = null;
try {
stamper = new PdfStamper(reader, new FileOutputStream(fileDestination));
AcroFields form = stamper.getAcroFields();
form.addSubstitutionFont(baseFont);
form.setField("field1", "Значение");
... // other fields, catch etc
}

关于java - 当我以 pdf 形式向占位符插入值时,如何设置 iText 的编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39505223/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com