Home  >  Article  >  System Tutorial  >  A smart tool to convert web pages to PDF in Linux

A smart tool to convert web pages to PDF in Linux

PHPz
PHPzforward
2024-02-09 12:03:131042browse

wkhtmltopdf is an open source, simple and efficient command line shell program that can convert any HTML (web page) to PDF files or images (such as jpg, png, etc.).

wkhtmltopdf is written in C and released under the GNU/GPL (General Public License). It uses the WebKit rendering engine to convert HTML pages to PDF files without losing page quality. This is a very practical and reliable solution for creating and storing web page snapshots in real time.

一款在Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf functions

  1. Open source and cross-platform.
  2. Convert any HTML web page to a PDF file using the WebKit engine.
  3. Option to add header and footer
  4. Table of contents generation (TOC) options.
  5. Provides batch mode conversion.
  6. Support for PHP or Python via bindings to libwkhtmltox.

In this article, we will introduce how to use tar package to install wkhtmltopdf under Linux system.

Install Evince (PDF browser)

Let us install evince (a PDF reader) on Linux system to browse PDF files.

$ 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 code file

Use the wget command to download the wkhtmltopdf source code file according to your Linux architecture, or you can download the latest version from the wkhtmltopdf download page (the latest stable version is currently 0.12.4)

On 64-bit Linux systems:

$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz

On 32-bit Linux systems:

$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz

Installing wkhtmltopdf in Linux

Use the tar command to decompress the file into the current directory.

------ 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 

In order to execute the program from any path, install wkhtmltopdf into the /usr/bin directory.

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

How to use wkhtmltopdf?

We will see how to convert a remote HTML page to a PDF file, verify the information, and use evince to browse the created file in the GNOME desktop.

Convert HTML web pages to PDF files

To convert any HTML page to PDF, run the following command. It will convert the page into 10-Sudo-Configurations.pdf in the current directory.

# wkhtmltopdf http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf

Example output:

Loading pages (1/6)
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

Browse the generated PDF file

To verify the created file, use the following command.

$ file 10-Sudo-Configurations.pdf

Example output:

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

Browse the generated PDF file details

To browse the generated file information, run the following command.

$ pdfinfo 10-Sudo-Configurations.pdf

Example 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

Browse the created file

Use evince on the desktop to view the latest generated PDF file.

$ evince 10-Sudo-Configurations.pdf

Sample screenshot:
Looks great in my Linux Mint 17.
一款在Linux 中将网页转成 PDF 的智能工具

Create a table of contents for PDF pages

To create a table of contents of PDF files, use the toc option.

$ wkhtmltopdf toc http://www.tecmint.com/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf

Example 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 view the TOC of a created file, use evince again.

$ evince 10-Sudo-Configurations.pdf

Sample screenshot:

看一下下面的图。它上看去比上面的更好。

一款在Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf 选项及使用

更多关于 wkhtmltopdf 的使用及选项,使用下面的帮助命令。它会显示出所有可用的选项。

$ wkhtmltopdf --help

The above is the detailed content of A smart tool to convert web pages to PDF in Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:lxlinux.net. If there is any infringement, please contact admin@php.cn delete