Я вижу, что есть несколько вариантов для этого. Мой вопрос заключается в том, знает ли кто-нибудь о том, что я могу просто передать веб-страницу php в создатель pdf, и он выводит точно так же, как если бы он просматривался через браузер? Принимая во внимание CSS, изображения и функции php и т. Д.
благодаря
Думайте, что wkhtmltopdf – это ответ, который вы ищете, поскольку он использует WebKit для рендеринга веб-страницы так же, как и в браузере, а затем преобразует его в PDF-файл. Это позволит вам написать загрузку PHP-кода для организации макета вашего PDF-файла.
Детали со своего сайта:
Простая утилита для преобразования html в pdf с использованием механизма рендеринга webkit и qt.
Поиск в Интернете я нашел несколько инструментов командной строки, которые позволяют конвертировать HTML-документ в PDF-документ, однако все они, похоже, используют свой собственный и, скорее, неполный механизм рендеринга, что приводит к низкому качеству. Недавно QT 4.4 был выпущен с виджетами WebKit (WebKit – это движок Apples Safari, который является вилкой KDE KHtml), и создание хорошего инструмента стало очень простым.
- Преобразование веб-страниц в PDF-документы с использованием webkit
- Добавление верхних и нижних колонтитулов (только статическая версия)
- Генерация TOC (только статическая версия)
- Конверсии пакетного режима
- (Linux) Больше не требуется запуск XServer (однако должны быть установлены клиентские библиотеки X11)
Для кода и дополнительной информации об интеграции wkhtmltopdf с PHP см. https://github.com/aur1mas/Wkhtmltopdf
На самом деле это вопрос из двух частей.
Создание снимка экрана веб-сайта в изображение имеет много хороших ответов на SO
Чтобы создать PDF-файл, используйте, например, библиотеку fpdf .
Вы должны взглянуть на этот класс, мне это очень нравится. Он отображает HTML в PDF (также включает CSS)
Вот несколько примеров
РЕДАКТИРОВАТЬ
Поскольку ссылки выше нарушены с 16/03/2016, здесь приведена ссылка на главную страницу libs: mPDF .
Тот факт, что это веб-страница PHP, не имеет значения. Чтобы создать PDF-файл, который выглядит так, как должна выглядеть веб-страница, вам нужно отобразить страницу – это то, что делает веб-браузер, когда вы его посещаете.
Вам нужно будет использовать движок веб-браузера, такой как Gecko, для создания макета страницы, а затем экспортировать его как изображение и вставить его в PDF-файл. Это можно сделать программно.
Существуют PHP-модули / классы для генерации PDF-файлов, и есть способы использования CSS для лучшей подготовки страницы для печати (в формате pdf).
PHP не может «видеть» страницу, как видит ее браузер.