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

Jhonny Mertz b0615499de Merge pull request #51 from jhonnymertz/only-tag-deploy 7 vuotta sitten
deploy 3f7959f5be adjusting conditional deploy 7 vuotta sitten
src 170e5c17b6 Commenting some code, renaming and setting integration tests 7 vuotta sitten
.gitignore 4e2e512b5a Fix compile on current java 10 vuotta sitten
.travis.yml 9de5af7163 testing travis-ci variables 7 vuotta sitten
LICENSE 5c32296c22 Initial commit 12 vuotta sitten
README.md 51a6819559 adding more info to README 7 vuotta sitten
pom.xml 32cc963d8b new release 7 vuotta sitten

README.md

Java WkHtmlToPdf Wrapper Build Status

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:

dependencies {
    compile 'com.github.jhonnymertz:java-wkhtmltopdf-wrapper:1.1.8-RELEASE'
}

Maven

In your pom.xml:

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

Usage and Examples

Pdf pdf = new Pdf();

pdf.addPageFromString("<html><head><meta charset=\"utf-8\"></head><h1>Müller</h1></html>");
pdf.addPageFromUrl("http://www.google.com");

// 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"));

// Add styling for Table of Contents
pdf.addTocParam(new Param("--xsl-style-sheet", "my_toc.xsl"));

// 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.addPageFromUrl("http://www.google.com");

pdf.saveAs("output.pdf");

This is not an official Wkhtmltopdf product

This library is not an official Wkhtmltopdf product. Support is available on a best-effort basis via github issue tracking. Pull requests are welcomed.

Bugs

  • Tests are incomplete

License

This project is available under MIT Licence.