Выравнивание изображения цифровой подписи iText7

#itext7

#itext7

Вопрос:

В iText7, когда я добавляю изображение в цифровую подпись, изображение по умолчанию находится прямо в центре прямоугольника, который я определил, с любым текстом, выровненным по правому краю. Есть ли способ сдвинуть изображение так, чтобы оно было выровнено по левому краю прямоугольника цифровой подписи?

com.itextpdf.layout.элемент.У изображения есть способ выровнять себя по левому краю. Но PdfSignatureAppearance.setSignatureGraphic() требует параметра ImageData.

Ответ №1:

Вы можете создать внешний вид подписи совершенно произвольным образом, извлекая PdfFormXObject слой 2 и рисуя на нем:

 PdfSigner signer = ...
PdfSignatureAppearance appearance = signer.getSignatureAppearance();
PdfFormXObject layer2 = appearance.getLayer2();
try (Canvas layer2Canvas = new Canvas(layer2, signer.getDocument())) {
    [... design your signature appearance on layer2Canvas ...]
}
 

Однако, если вы не хотите этого делать, iText сам разрабатывает его, вряд ли оставляя вам какие-либо варианты.

Комментарии:

1. Добиваюсь прогресса в работе с PdfFormXObject. Спасибо, что указали мне правильное направление.