2.23.1.2. Утилиты wkhtmltopdf и wkhtmltoimage
wkhtmltopdf — набор из двух утилит командной строки для рендеринга HTML-файлов или веб-страниц с использованием движка WebKit:
- Утилита wkhtmltopdf выполняет рендеринг в PDF и существует в двух вариантах:
- Версия 0.10:
/usr/local/bin/wkhtmltopdf-amd64
- Версия 0.12:
/usr/local/bin/wkhtmltopdf
- Утилита wkhtmltoimage выполняет рендеринг в файл изображения:
/usr/local/bin/wkhtmltoimage
Утилиты доступны на хостинге по умолчанию. В примерах ниже для утилиты wkhtmltopdf используется версия 0.12. Чтобы воспользоваться версией 0.10, просто замените в команде название утилиты с wkhtmltopdf
на wkhtmltopdf-amd64
.
Встроенная документация
Просмотр краткой документации:
- wkhtmltopdf:
wkhtmltopdf -h
- wkhtmltoimage:
wkhtmltoimage -h
Просмотр подробной документации:
- wkhtmltopdf:
wkhtmltopdf -H
- wkhtmltoimage:
wkhtmltoimage -H
Использование
Из консоли
Формат запуска:
- wkhtmltopdf:
wkhtmltopdf <URL или путь к исходному HTML-файлу> <путь и имя выходного PDF-файла>
- wkhtmltoimage:
wkhtmltoimage <URL или путь к исходному HTML-файлу> <путь и имя выходного файла изображения>
Простой пример преобразования веб-страницы:
- В PDF-документ:
wkhtmltopdf http://google.com google.pdf
Или:
/usr/local/bin/wkhtmltopdf http://google.com google.pdf
- В файл изображения:
wkhtmltoimage http://google.com google.png
Или:
/usr/local/bin/wkhtmltoimage http://google.com google.png
Простой пример преобразования HTML-документа:
- В PDF-документ:
wkhtmltopdf /home/example/путь/к/файлу/document.html document.pdf
Или:
/usr/local/bin/wkhtmltopdf /home/example/путь/к/файлу/document.html document.pdf
Где
example
это название хостинг-аккаунта. - В файл изображения:
wkhtmltoimage /home/example/путь/к/файлу/document.html document.png
Или:
/usr/local/bin/wkhtmltoimage /home/example/путь/к/файлу/document.html document.png
Где
example
это название хостинг-аккаунта.
При формировании PDF-документа можно добавлять хедер и футер из отдельных HTML-файлов:
wkhtmltopdf --header-html <путь к HTML-хедеру> --footer-html <путь к HTML-футеру> <путь к исходному HTML-файлу> <путь и имя выходного PDF-файла>
При необходимости для PDF-документов можно задавать отступы:
wkhtmltopdf --margin-top 25mm --margin-bottom 25 mm --margin-left 15mm --margin-right 15mm --header-html <путь к шапке HTML> --footer-html <путь к подвалу HTML> <путь к исходному файлу HTML> <путь и имя выходного файла PDF>
Примеры других полезных опций для wkhtmltopdf:
–encoding windows-1251
— явное указание кодировки исходного HTML-файла.–page-size A4
— формат страницы выходного PDF-файла.–orientation Landscape
— ориентация страницы выходного PDF-файла.
Из PHP
Использовать утилиты из PHP можно с помощью функции exec.