Конвертировать HTML шаблон в PDF, используя itext7 с динамическим c верхним и нижним колонтитулом - PullRequest
0 голосов
/ 24 марта 2020

Я пытался использовать приведенный ниже шаблон HTML, чтобы преобразовать его в PDF с помощью iText7, но верхний и нижний колонтитулы не привязаны к их предполагаемому положению. используемый пример Я пытаюсь избежать свойств верхнего колонтитула @Page и нижнего колонтитула, поскольку пытаюсь sh подгонять динамическое содержимое c в обоих разделах с расширенным пространством более 3 строк в каждом.

iText код и результат:

ConverterProperties properties = new ConverterProperties();
//properties.setFontProvider(fontProvider);
properties.setMediaDeviceDescription(new MediaDeviceDescription(MediaType.PRINT));
PdfWriter writer = new PdfWriter("out.pdf");
PdfDocument pdf = new PdfDocument(writer);
pdf.setTagged();
PageSize pageSize = PageSize.LETTER;
pdf.setDefaultPageSize(pageSize);

OutlineHandler outlineHandler = OutlineHandler.createStandardHandler();
properties.setOutlineHandler(outlineHandler);

//html template (templateOutput)
HtmlConverter.convertToPdf(templateOutput, pdf, properties);
byte[] pdfData = byteArrayOutputStream.toByteArray();
pdf.close();

The second page without header and footer First Page

Пожалуйста, какие-либо предложения по решению проблемы? Спасибо

1 Ответ

0 голосов
/ 27 марта 2020

Вот пример HTML, который правильно обрабатывается pdfHTML, а многострочный заголовок отображается полностью в верхней части страницы, как и ожидалось:

<!DOCTYPE html>
<html>

<head>
    <style>
        #header {
            position: running(header);
        }

        @page {
            margin-top: 100px;
            @top-center {
                content: element(header);
            }
        }
    </style>
</head>

<body>

<div id="header">Header line 1<br/>Header line 2<br/>Header line 3</div>

<p>Content of the page</p>

</body>
</html>

Страница выглядит следующим образом PDF:

result

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