Можем ли мы добавить многострочный текстовый водяной знак в документ с помощью последней банки iText? - PullRequest
0 голосов
/ 31 января 2020

Я ищу функцию многострочного текстового водяного знака. Последняя версия iText поддерживает эту функцию? Я прилагаю картину требования. Дайте мне знать ваши выводы.

Multi-line Watermark

1 Ответ

1 голос
/ 04 февраля 2020

Вот пример того, как добавить повторяющийся водяной знак в качестве фона в существующий документ:

pdfDocument = new PdfDocument(new PdfReader(inFileName), new PdfWriter(outFileName));

PdfPattern.Tiling tiling = new Tiling(new Rectangle(100, 50));
new Canvas(new PdfPatternCanvas(tiling, pdfDocument), pdfDocument, tiling.getBBox()).add(new Paragraph("TESTING")
        .setFontColor(ColorConstants.RED)
        .setRotationAngle(Math.PI / 10));

for (int i = 1; i <= pdfDocument.getNumberOfPages(); i++) {
    PdfPage page = pdfDocument.getPage(i);
    new PdfCanvas(page.newContentStreamBefore(), page.getResources(), pdfDocument)
            .saveState()
            .setFillColor(new PatternColor(tiling))
            .rectangle(page.getCropBox())
            .fill()
            .restoreState();
}

pdfDocument.close();

Вот как визуально выглядит результат:

result

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...