Как заполнить PDF-форму и поддерживать несколько языков в iTextSharp?

Я хотел знать, есть ли способ поддержки нескольких языков при заполнении поля формы с помощью iTextSharp. Мы должны поддерживать заполнение полей пользователем на английском, европейских языках с диакритическими знаками и азиатских языках, таких как китайский и японский, но не знаем, как их поддерживать в одном и том же PDF-файле (например, у пользователя могут быть поля формы, в которых есть ответы на английском языке). а некоторые на китайском например). Нам нужно работать с предварительно определенными формами Acrobat, например, мы не можем полностью создать PDF-файл с нуля в нашем сценарии.

Есть ли способ сделать это в iTextSharp? По крайней мере, для поддержки большинства европейских языков и китайского языка, а также для того, чтобы процесс формы / генерации знал, когда использовать право знать, что поддерживает определенный символ (ы)?

2 ответа

Будет ли вариант динамически генерировать PDF на основе пользовательских данных из другой программы, например, приложения Windows Forms или веб-страницы? На основе выбора пользователя из указанного приложения вы можете динамически генерировать PDF (на основе шаблона) и применять соответствующие наборы символов.

Да.

Проблема, с которой вы сталкиваетесь (лучше всего предположить), состоит в том, что предопределенные шрифты для полей, которые вы заполняете, используют WinAnsiEncoding (или некоторую другую монобайтовую кодировку, которая не поддерживает все необходимые диакритические знаки).

И я вижу, что iText поддерживает настройку шрифта поля напрямую. Отлично.

myAcroFields.setFieldProperty(fldName, "textfont", myBaseFont, null);

Я полагаю, что вы должны использовать шрифты с китайскими кодировками, но для европейских кодированных шрифтов вы, вероятно, захотите полностью внедрить нужный шрифт. Шрифты в полях формы (которые можно редактировать) плохо реагируют, когда вы пытаетесь отобразить отсутствующий символ... по крайней мере, они привыкли много лет назад. В последний раз я пробовал использовать Acrobat 5, поэтому вполне вероятно, что поведение улучшилось.

Другие вопросы по тегам