Wkhtmltopdf-LinuxでウェブサイトのHTMLページをPDFに変換するスマートツール


Wkhtmltopdfは、オープンソースのシンプルで非常に効果的なコマンドラインシェルユーティリティであり、ユーザーが任意のHTML(Webページ)をPDFドキュメントまたは画像(jpg、pngなど)に変換できるようにします。

WkhtmltopdfはC ++プログラミング言語で書かれており、GNU/GPL(General Public License)の下で配布されています。 WebKitレンダリングレイアウトエンジンを使用して、ページの品質を損なうことなくHTMLページをPDFドキュメントに変換します。これは、Webページのスナップショットをリアルタイムで作成および保存するための非常に便利で信頼できるソリューションです。

Wkhtmltopdfの機能

  1. Open source and cross platform.
  2. Convert any HTML web pages to PDF files using WebKit engine.
  3. Options to add headers and footers
  4. Table of Content (TOC) generation option.
  5. Provides batch mode conversions.
  6. Support for PHP or Python via bindings to libwkhtmltox.

この記事では、ソースtarballファイルを使用してLinuxシステムにWkhtmltopdfプログラムをインストールする方法を紹介します。

Evinceのインストール(PDFビューア)

LinuxシステムでPDFファイルを表示するためのevince(PDFリーダー)プログラムをインストールしましょう。

$ sudo yum install evince             [RHEL/CentOS and Fedora]
$ sudo dnf install evince             [On Fedora 22+ versions]
$ sudo apt-get install evince         [On Debian/Ubuntu systems]

Wkhtmltopdfソースファイルをダウンロードする

Wgetコマンドを使用してLinuxアーキテクチャ用のwkhtmltopdfソースファイルをダウンロードするか、wkhtmltopdfダウンロードページから最新バージョン(現在の安定版シリーズは0.12.4)をダウンロードすることもできます。

$ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
$ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz

LinuxにWkhtmltopdfをインストールする

次のtarコマンドを使用して、ファイルを現在の作業ディレクトリに抽出します。

------ On 64-bit Linux OS ------
$ sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz 

------ On 32-bit Linux OS ------
$ sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz 

/ usr/binディレクトリの下にwkhtmltopdfをインストールして、任意のパスからプログラムを簡単に実行できるようにします。

$ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/

Wkhtmltopdfの使い方は?

ここでは、リモートHTMLページをPDFファイルに変換する方法、情報を確認する方法、GNOMEデスクトップのevinceプログラムを使用して作成されたファイルを表示する方法を説明します。

WebサイトのHTMLWebページをPDFに変換するには、次のコマンド例を実行します。指定されたWebページを現在の作業ディレクトリの10-Sudo-Configurations.pdfに変換します。

# wkhtmltopdf https://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
Loading pages (1/6)
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

ファイルが作成されたことを確認するには、次のコマンドを使用します。

$ file 10-Sudo-Configurations.pdf
10-Sudo-Configurations.pdf: PDF document, version 1.4

生成されたファイルの情報を表示するには、次のコマンドを発行します。

$ pdfinfo 10-Sudo-Configurations.pdf
Title:          10 Useful Sudoers Configurations for Setting 'sudo' in Linux
Creator:        wkhtmltopdf 0.12.4
Producer:       Qt 4.8.7
CreationDate:   Sat Jan 28 13:02:58 2017
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          13
Encrypted:      no
Page size:      595 x 842 pts (A4)
Page rot:       0
File size:      697827 bytes
Optimized:      no
PDF version:    1.4

デスクトップからevinceプログラムを使用して新しく作成されたPDFファイルを見てください。

$ evince 10-Sudo-Configurations.pdf

私のLinuxMint17ボックスの下ではかなり見栄えがします。

PDFファイルの目次を作成するには、tocとしてオプションを使用します。

$ wkhtmltopdf toc https://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
Loading pages (1/6)
Counting pages (2/6)
Loading TOC (3/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

作成したファイルの目次を確認するには、再度evinceプログラムを使用します。

$ evince 10-Sudo-Configurations.pdf

下の写真を見てください。上記よりもさらに良く見えます。

Wkhtmltopdfのその他の使用法とオプションについては、次のヘルプコマンドを使用してください。それはあなたがそれで使用できるすべての利用可能なオプションのリストを表示します。

$ wkhtmltopdf --help