Система, над которой я работаю, имеет в ней анкеты, а затем показывает ответы администратору в хорошем отчете на экране. Мне нужно создать функциональность, которая превращает отчет на экране в pdf, подобно тому, как браузер генерирует PDF-страницу, когда вы выбираете печать. Хотя мне нужно только превратить раздел страницы в pdf. И было бы идеально, чтобы иметь возможность изменять HTML, чтобы разрывы страниц PDF не мешали представлению отчета.
Вы можете загрузить pdf файл, как выглядит отчет, сгенерированный функциями браузера. Это всего лишь пример, мне нужен pdf файл, который будет создан ссылкой или кнопкой, и не включает всю страницу (верхняя часть в этом случае).
Я пробовал некоторые php HTML для генераторов pdf, но это сложно, потому что HTML динамически генерируется, поэтому я не уверен, как отправить весь HTML-документ после отображения на страницу, которая создает PDF файл.
Чтобы преодолеть разрывы страниц, я рассмотрел использование javascript или jquery для чтения высоты div каждого вопроса в отчете, а затем написал простой скрипт, чтобы вычислить, будет ли следующий div поместиться на странице, и если не добавить маржу поверх этого div, чтобы он начинался с новой страницы.
Какое программное обеспечение можно использовать для создания pdf файла, учитывая эти требования? Либо php, либо javascript. Цените помощь.
Вы считали Snappy для PHP? Он использует wkhtmltopdf за шторами для преобразования любого HTML-документа в PDF.
Мы используем его, и он отлично работает.
Вы можете попробовать mpdf и использовать функцию page-break-inside: avoid
свойства, которое на самом деле является свойством CSS. Я не использовал это, но это может быть то, что вы ищете.
Похоже, вы можете добавить это свойство в теги <div>
и <table>
(поддерживаемый mPDF CSS).