mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-04 22:00:34 +08:00
213 lines
6.6 KiB
Markdown
213 lines
6.6 KiB
Markdown
Wkhtmltopdf – A Smart Tool to Convert Website HTML Page to PDF in Linux
|
||
============================================================
|
||
|
||
**Wkhtmltopdf** is an open source simple and much effective command-line shell utility that enables user to convert any given **HTML** (**Web Page**) to **PDF** document or an image (**jpg**, **png**, etc).
|
||
|
||
Wkhtmltopdf is written in **C++** programming language and distributed under **GNU/GPL** (**General Public License**). It uses **WebKit** rendering layout engine to convert **HTML** pages to** PDF**document without loosing the quality of the pages. Its is really very useful and trustworthy solution for creating and storing snapshots of web pages in real-time.
|
||
|
||
### Wkhtmltopdf Features
|
||
|
||
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.
|
||
|
||
In this article we will show you how to install **Wkhtmltopdf** program under Linux systems using source tarball files.
|
||
|
||
### Install Evince (PDF Viewer)
|
||
|
||
Let’s install **evince** (a **PDF** reader) program for viewing **PDF** files in Linux systems.
|
||
|
||
```
|
||
$ 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]
|
||
```
|
||
|
||
### Download Wkhtmltopdf Source File
|
||
|
||
Download **wkhtmltopdf** source files for your **Linux** architecture using [Wget command][1], or you can also download latest versions (current stable series is **0.12.4**) at [wkhtmltopdf download][2] page.
|
||
|
||
##### On 64-bit Linux OS
|
||
|
||
```
|
||
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
|
||
```
|
||
|
||
##### On 32-bit Linux OS
|
||
|
||
```
|
||
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz
|
||
```
|
||
|
||
### Install Wkhtmltopdf in Linux
|
||
|
||
Extract the files to a current working directory using following [tar command][3].
|
||
|
||
```
|
||
------ 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
|
||
```
|
||
|
||
Install the **wkhtmltopdf** under **/usr/bin** directory for easy execution of program from any path.
|
||
|
||
```
|
||
$ sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/
|
||
```
|
||
|
||
### How to Use Wkhtmltopdf?
|
||
|
||
Here we will see how to covert remote **HTML** pages to **PDF** files, verify information, view created files using **evince** program from the **GNOME** Desktop.
|
||
|
||
#### Convert Website HTML Page to PDF File
|
||
|
||
To convert any website **HTML** web page to **PDF**, run the following example command. It will convert the given webpage to [10-Sudo-Configurations.pdf][4] in current working directory.
|
||
|
||
```
|
||
# wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Output :
|
||
|
||
```
|
||
Loading pages (1/6)
|
||
Counting pages (2/6)
|
||
Resolving links (4/6)
|
||
Loading headers and footers (5/6)
|
||
Printing pages (6/6)
|
||
Done
|
||
```
|
||
|
||
#### View Generated PDF File
|
||
|
||
To verify that the file is created, use the following command.
|
||
|
||
```
|
||
$ file 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Output :
|
||
|
||
```
|
||
10-Sudo-Configurations.pdf: PDF document, version 1.4
|
||
```
|
||
|
||
#### View Information of Generated PDF File
|
||
|
||
To view the information of generated file, issue the following command.
|
||
|
||
```
|
||
$ pdfinfo 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Output :
|
||
|
||
```
|
||
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
|
||
```
|
||
|
||
#### View Created PDF File
|
||
|
||
Take a look at the newly created **PDF** file using **evince** program from the desktop.
|
||
|
||
```
|
||
$ evince 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Screenshot :
|
||
|
||
Looks pretty nice under my Linux Mint 17 box.
|
||
|
||
[
|
||
![View Website Page in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/View-Website-Page-in-PDF.png)
|
||
][5]
|
||
|
||
View Website Page in PDF
|
||
|
||
#### Create TOC (Table Of Content) of a Page to PDF
|
||
|
||
To create a table of content for a **PDF** file, use the option as **toc**.
|
||
|
||
```
|
||
$ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Output :
|
||
|
||
```
|
||
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
|
||
```
|
||
|
||
To check the **TOC** for the created file, again use evince program.
|
||
|
||
```
|
||
$ evince 10-Sudo-Configurations.pdf
|
||
```
|
||
|
||
##### Sample Screenshot :
|
||
|
||
Take a look at the picture below. it looks even more better than the above.
|
||
|
||
[
|
||
![Create Website Page to Table of Contents in PDF](http://www.tecmint.com/wp-content/uploads/2012/10/Create-Website-Page-Table-of-Contents-in-PDF.png)
|
||
][6]
|
||
|
||
Create Website Page to Table of Contents in PDF
|
||
|
||
#### Wkhtmltopdf Options and Usage
|
||
|
||
For **Wkhtmltopdf** more usage and options, use the following help command. It will display list of all available options that you can use with it.
|
||
|
||
```
|
||
$ wkhtmltopdf --help
|
||
```
|
||
|
||
--------------------------------------------------------------------------------
|
||
|
||
作者简介:
|
||
|
||
I am Ravi Saive, creator of TecMint. A Computer Geek and Linux Guru who loves to share tricks and tips on Internet. Most Of My Servers runs on Open Source Platform called Linux. Follow Me: Twitter, Facebook and Google+
|
||
|
||
--------------------------------------------------
|
||
|
||
via: http://www.tecmint.com/wkhtmltopdf-convert-website-html-page-to-pdf-linux/
|
||
|
||
作者:[Ravi Saive][a]
|
||
译者:[译者ID](https://github.com/译者ID)
|
||
校对:[校对者ID](https://github.com/校对者ID)
|
||
|
||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||
|
||
[a]:http://www.tecmint.com/author/admin/
|
||
[1]:http://www.tecmint.com/10-wget-command-examples-in-linux/
|
||
[2]:http://wkhtmltopdf.org/downloads.html
|
||
[3]:http://www.tecmint.com/18-tar-command-examples-in-linux/
|
||
[4]:http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/
|
||
[5]:http://www.tecmint.com/wp-content/uploads/2012/10/View-Website-Page-in-PDF.png
|
||
[6]:http://www.tecmint.com/wp-content/uploads/2012/10/Create-Website-Page-Table-of-Contents-in-PDF.png
|