2.19.1.1.1. Утиліти 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 можна за допомогою функції exec.

Зміст