Potrzebowałem aplikacji, która pozwoli mi na konwersję strony HTML na plik w formacie PDF. Wymagania były następujące:
- prosta obsługa, najlepiej powinna ograniczyć się do podania źródła strony i nazwy pliku do zapisania
- aplikacja powinna samodzielnie pobrać stronę (czyli odpada konieczność wcześniejszego jej ściągania na dysk)
- w dokumencie powinny znaleźć się powiązanie grafiki
- konieczność obsługi UTF-8 (polskie znaczki)
- możliwość wywołania aplikacji przy użyciu linii poleceń
Aplikacją, która spełniła praktycznie wszystkie te wymagania jest wkhtmltopdf
. Pozwala ona na konwersję strony HTML do pliku PDF. Wykorzystuje do tego silnik WebKit dostarczany z QT 4.4. Czyli nie dość że robi co do niej należy, to jeszcze korzysta z silnika wykorzystywanego przez przeglądarki internetowe (np. Safari., Chrome czy też Konqueror).
W środowisku Ubuntu instalacja aplikacji sprowadza się do wydania polecenia:
Użycie aplikacji jest też bardzo proste:
Powyższe polecenie zapisze stronę (tę którą właśnie czytasz) do pliku PDF.
Wersja aplikacji która przychodzi z Ubunut wymaga uruchomienia w środowisku X11. Aby pozbyć się tej zależności, należy poprać wersję statycznie skompilowaną ze strony projektu. Udostępnia ona także kilka innych możliwości, których nie znajdziemy w wersji dostarczanej w dystrybucji. Jednak nawet to wystarcza do zapisania strony w formacie PDF.