Как определить конец страницы перед преобразованием html в pdf с помощью wkhtmltopdf?

#javascript #html #laravel #wkhtmltopdf

#javascript #HTML #laravel #wkhtmltopdf

Вопрос:

У меня есть HTML-страница, которая генерируется динамически на основе определенной формы. Как только HTML-страница сгенерирована, ее можно преобразовать в PDF с помощью wkhtmltopdf .

Если страница слишком длинная, wkhtmltopdf она автоматически разделится на несколько страниц, но я хочу контролировать, ГДЕ произойдет разделение.

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

Поэтому в идеале я хочу иметь возможность определить, является ли контент, созданный формой, слишком длинным для 1 страницы или нет, а затем вручную добавить новую страницу с контролируемым контентом.

Чтобы добавить новую страницу, я в основном использую следующее правило CSS, которое отлично работает:

   @media print {
    .new-page {
      page-break-before: always;
    }
  }
  

Приложение встроено в Laravel Svelte.js (но я не думаю, что это имеет большое значение, потому что я просто пытаюсь выяснить, как подойти к проблеме в целом).

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

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

1. Я думаю, вы на правильном пути. Взгляните на другие правила CSS для управления разрывом страницы: css-tricks.com/almanac/properties/p/page-break

Ответ №1:

Для управления разделением страницы вы можете использовать атрибут page-break-afterпосле разрыва страницы.

Пример :

 <div style="page-break-after:always;"></div>
  

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

1. Привет, извините, но я не уверен, что вы прочитали мой вопрос. Я хотел бы иметь возможность определять, где разбивать страницу на основе длины содержимого.