1. 程式人生 > >【JAVA】使用 iText XMLWorker實現HTML轉PDF

【JAVA】使用 iText XMLWorker實現HTML轉PDF

使用 iText XML Worker實現HTML轉PDF

package com.yfli.iText;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.InputStreamReader;

import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfWriter;
import com.itextpdf.tool.xml.XMLWorkerHelper;

public class HtmlToPDFTest {
	public static void main(String[] args) throws Exception {
		parseHtmlToPdf();
	}

	/**
	 * 使用 iText XML Worker實現HTML轉PDF
	 * itextpdf-5.5.6.jar
	 * @param fileName
	 * @throws Exception
	 */
	public static void parseHtmlToPdf() throws Exception {
		String htmlFile = "F:/iText/demo.html";
		String pdfFile = "F:/iText/htmlToPdf.pdf";
		InputStream htmlFileStream = new FileInputStream(htmlFile);

		// 建立一個document物件例項
		Document document = new Document();
		// 為該Document建立一個Writer例項
		PdfWriter pdfwriter = PdfWriter.getInstance(document,
				new FileOutputStream(pdfFile));
		pdfwriter.setViewerPreferences(PdfWriter.HideToolbar);
		// 開啟當前的document
		document.open();

		InputStreamReader isr = new InputStreamReader(htmlFileStream, "UTF-8");
		XMLWorkerHelper.getInstance().parseXHtml(pdfwriter, document, isr);
		document.close();
	}

}