对 wkhtmltopdf 的调用功能进行包装,方便简化使用

Jhonny Mertz 367ecaaa81 adjusting lib version 7 年之前
src 2a3b9f32ee Issue 20 - A "Full" Error Stream Blocks the wkhtmltopdf Process 7 年之前
.gitignore 4e2e512b5a Fix compile on current java 10 年之前
LICENSE 5c32296c22 Initial commit 11 年之前
README.md 367ecaaa81 adjusting lib version 7 年之前
pom.xml a1259d200b setting up new release 7 年之前

README.md

Java WkHtmlToPdf Wrapper

A Java based wrapper for the wkhtmltopdf command line tool. As the name implies, it uses WebKit to convert HTML documents to PDFs.

Requirements

wkhtmltopdf must be installed and working on your system.

Wrapper project dependency

Make sure you have Java Wrapper dependency added to your project.

If you are using Gradle/Maven, see example below:

Gradle

In your build.gradle:

	allprojects {
		repositories {
			maven { url "https://jitpack.io" }
		}
	}
	
	dependencies {
		compile 'com.github.jhonnymertz:java-wkhtmltopdf-wrapper:1.1.0-RELEASE'
	}
Maven

In your pom.xml:

	<dependencies>
		<dependency>
			<groupId>com.github.jhonnymertz</groupId>
			<artifactId>java-wkhtmltopdf-wrapper</artifactId>
			<version>1.1.0-RELEASE</version>
		</dependency>
	</dependencies>

	<repositories>
		<repository>
			<id>jitpack.io</id>
			<url>https://jitpack.io</url>
		</repository>
	</repositories>

Usage

Pdf pdf = new Pdf();

pdf.addPage("<html><head><meta charset=\"utf-8\"></head><h1>Müller</h1></html>", PageType.htmlAsString);
pdf.addPage("http://www.google.com", PageType.url);

// Add a Table of contents
pdf.addToc();

// The `wkhtmltopdf` shell command accepts different types of options such as global, page, headers and footers, and toc. Please see `wkhtmltopdf -H` for a full explanation.
// All options are passed as array, for example:
pdf.addParam(new Param("--no-footer-line"), new Param("--header-html", "file:///header.html"));
pdf.addParam(new Param("--enable-javascript"));

// Save the PDF
pdf.saveAs("output.pdf");

Xvfb Support

XvfbConfig xc = new XvfbConfig();
xc.addParams(new Param("--auto-servernum"), new Param("--server-num=1"));

WrapperConfig wc = new WrapperConfig();
wc.setXvfbConfig(xc);

Pdf pdf = new Pdf(wc);
pdf.addPage("http://www.google.com", PageType.url);

pdf.saveAs("output.pdf");

Snapshots

Snapshots built from the master branch are available through jitpack using version 1.2.0-SNAPSHOT

License

This project is available under MIT Licence.