Wkhtmltopdf повторяющиеся заголовки таблиц перекрывают содержимое, когда одна строка таблицы охватывает несколько страниCSS

Разбираемся в CSS
Ответить
Anonymous
 Wkhtmltopdf повторяющиеся заголовки таблиц перекрывают содержимое, когда одна строка таблицы охватывает несколько страни

Сообщение Anonymous »

Я конвертирую HTML в PDF с помощью wkhtmltopdf 0.12.6.1 (исправленный Qt).
HTML отображается правильно во всех браузерах, но в созданном PDF-файле возникают проблемы с макетом таблиц, занимающих несколько страниц.
Описание проблемы
Когда таблица:
  • занимает несколько страниц. несколько страниц
  • использует , поэтому заголовки повторяются
  • имеет много столбцов (15+ в реальном случае использования)
  • содержит очень длинный текст в одной или нескольких ячейках таблицы ()[/b]
a одна строка таблицы () может занимать две страницы[/b].

Когда это происходит, wkhtmltopdf повторяет заголовок таблицы на новой странице, но не резервирует для него вертикальное пространство, в результате чего повторяющийся заголовок перекрывает продолжение той же строки. В некоторых случаях содержимое строки частично обрезается.
Эта проблема возникает только тогда, когда одна строка сама по себе разбивается на страницы.

Строки, которые полностью умещаются на одной странице, отображаются правильно, даже в многостраничных таблицах.
Используется команда wkhtmltopdf

Код: Выделить всё

wkhtmltopdf \
--orientation Landscape \
--footer-center "name of the template" \
--footer-font-size 10 \
--footer-spacing 5 \
input.html output.pdf
Минимально воспроизводимый пример
Следующий HTML-код корректно отображается в браузерах, но создает перекрытие заголовков в wkhtmltopdf, когда содержимое ячейки строки перетекает на следующую страницу:

Код: Выделить всё





body {
font-family: Arial;
font-size: 10pt;
line-height: 1.4;
}
table {
width: 100%;
border-collapse: collapse;
}
table, th, td {
border: 1px solid black;
}
td {
padding: 10px;
white-space: normal;
word-wrap: break-word;
}







ID
Description
Date





1


This is a very long text value that wraps into multiple lines and
causes the content of this cell to continue onto the next page.
When this happens, the repeated table header overlaps the
continuation of this same row in wkhtmltopdf.

23/01/2026







Вопрос
Есть ли способ заставить wkhtmltopdf правильно повторять заголовки таблицы, когда одна строка таблицы занимает несколько страниц, без перекрытия заголовков или усечения строк?

Существуют ли известные обходные пути CSS или это известное ограничение механизма компоновки wkhtmltopdf?

Подробнее здесь: https://stackoverflow.com/questions/798 ... -row-spans
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»