Skip to content

Commit 8b8819c

Browse files
committed
Update PdfFormField#getFieldName() generation.
If we create PdfString with unicode value we must put `UnicodeBig` encoding. DEVSIX-1357
1 parent 3013511 commit 8b8819c

File tree

3 files changed

+4
-4
lines changed

3 files changed

+4
-4
lines changed

forms/src/main/java/com/itextpdf/forms/PdfAcroForm.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -845,10 +845,10 @@ private Map<String, PdfFormField> iterateFields(PdfArray array, Map<String, PdfF
845845
parentField = PdfFormField.makeFormField(parentField.getParent(), document);
846846
}
847847
}
848-
name = fieldName.getValue() + "." + index;
848+
name = fieldName.toUnicodeString() + "." + index;
849849
index++;
850850
} else {
851-
name = fieldName.getValue();
851+
name = fieldName.toUnicodeString();
852852
}
853853
fields.put(name, formField);
854854
if (formField.getKids() != null) {

forms/src/main/java/com/itextpdf/forms/fields/PdfFormField.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1219,7 +1219,7 @@ public PdfString getFieldName() {
12191219
}
12201220
PdfString name = getPdfObject().getAsString(PdfName.T);
12211221
if (name != null) {
1222-
name = new PdfString(parentName + name.toUnicodeString());
1222+
name = new PdfString(parentName + name.toUnicodeString(), PdfEncodings.UNICODE_BIG);
12231223
}
12241224
return name;
12251225
}

forms/src/test/java/com/itextpdf/forms/PdfFormFieldTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ public void unicodeFormFieldTest() throws IOException {
137137
PdfAcroForm form = PdfAcroForm.getAcroForm(pdfDoc, true);
138138
Map<String, PdfFormField> formFields = form.getFormFields();
139139
String fieldName = "\u5E10\u53F71"; // 帐号1: account number 1
140-
Assert.assertEquals(formFields.keySet().toArray(new String[1])[0], fieldName);
140+
Assert.assertEquals(fieldName, formFields.keySet().toArray(new String[1])[0]);
141141
}
142142

143143
@Test

0 commit comments

Comments
 (0)