Как вставить разрыв страницы в HTML, поэтому wkhtmltopdf анализирует его?
Итак, в основном я использую wkhtmltopdf для преобразования динамического HTML-отчета в PDF.
Отчет имеет определенный формат, и меня попросили клонировать этот формат с помощью HTML.
Проблема, с которой я сталкиваюсь, заключается в том, что я не могу имитировать 100% -ный функциональный разрыв страницы в html, поэтому wkhtmltopdf может интерпретировать ее и отправлять содержимое на другую страницу.
Я пытаюсь избежать методов измерения размера страницы и так.
TIA для любой предоставленной помощи.
EDIT:
Пока я эмулирую разрыв страницы, используя <br>
, и он работает. Тем не менее, мне все равно нужно провести некоторое тестирование.
Ответы
Ответ 1
Укажите правило CSS, относящееся к типу печатного носителя. Есть ряд свойств, которые можно использовать для подкачки. Мне легче всего прикрепить свойство page-break-before
к классу, как показано ниже.
В HTML:
<p>Page 1, paragraph 1</p>
<p class="new-page">Page 2, paragraph 1</p>
<p>Page 2, paragraph 2</p>
В CSS:
@media print {
.new-page {
page-break-before: always;
}
}
Ответ 2
Когда я использую wkhtmltopdf
, я работаю со следующими классами:
.keep-together {
page-break-inside: avoid;
}
.break-before {
page-break-before: always;
}
.break-after {
page-break-after: always;
}
Поэтому я могу заставить:
- То, что содержимое конкретного контейнера не распространяется на две страницы (если оно соответствует одной странице). При использовании класса
keep-together
перед контейнером создается разрыв страницы.
- Что разрыв страницы принудительно перед конкретным контейнером.
- Что разрыв страницы происходит после определенного контейнера.
@media print
не работал у меня с wkhtmltopdf
.
Ответ 3
<div style = "display:block; clear:both; page-break-after:always;"></div>
Просто добавьте это в свой HTML-код