iText: отображать детали подписи на видимой подписи - PullRequest
2 голосов
/ 07 октября 2011

В текущем проекте я подписываю pdf-документы с помощью itext и java. Я также могу создать видимую подпись. Но теперь мне нужно настроить видимую подпись. Видимая подпись должна содержать имя подписавшего, адрес электронной почты, причину и дату подписания. Можно ли как-то прочитать эту информацию из сертификата, чтобы отобразить их на видимой марке? Я пытался с PdfTemplates, но я не нашел способ ссылки на данные сертификата. Я только смог установить статический текст в видимой подписи.

Другими словами: возможно ли выбрать, какие данные сертификата будут отображаться на видимой марке, без установки явного текста в pdftemplates (используйте ссылку на детали сертификата, такие как метка времени, DN, что когда-либо вместо статического текста)?

1 Ответ

0 голосов
/ 19 декабря 2017

Да и нет: вы можете свободно устанавливать текст в визуализации подписи, используя PdfSignatureAppearance.setLayer2Text() (вы даже можете спроектировать весь внешний вид на PdfSignatureAppearance.getLayer(2)), но оценка переменных не будет.

Таким образом, вы должны проверить сертификат самостоятельно и извлечь информацию для помещения в строку, которую вы собираетесь установить с помощью setLayer2Text. Для некоторых деталей вы можете использовать вспомогательные классы iText, например, CertificateInfo методы getIssuerFields() или getSubjectFields(); для других вам понадобятся ваши собственные методы. Но вы можете использовать код этих методов в качестве шаблона для методов, которые вам нужно реализовать.

...