1. 程式人生 > >java使用itext實現html程式碼轉pdf

java使用itext實現html程式碼轉pdf

1、引入jar包

<dependency>
  <groupId>com.lowagie</groupId>
  <artifactId>itext</artifactId>
  <version>4.2.2</version>
  <type>pom</type>
</dependency>

2、ItextUtil示例程式碼

import com.itextpdf.text.Document;
import com.itextpdf.text.Element;
import com.itextpdf.text.html.simpleparser.HTMLWorker;
import com.itextpdf.text.html.simpleparser.StyleSheet;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.util.List;

public class ItextUtil{
    /**
     * 將html檔案列印成pdf檔案
     * @param filePath
     * @param pdfPath
     */
    public void htmlCodeToPdf(String filePath, String pdfPath) {
        Document document = new Document();
        try {
            StyleSheet st = new StyleSheet();
            st.loadTagStyle("body", "leading", "16,0");
            PdfWriter.getInstance(document, new FileOutputStream(pdfPath));
            document.open();
            List p = HTMLWorker.parseToList(new FileReader(filePath), st);
            for(int k = 0; k < p.size(); ++k) {
                document.add((Element)p.get(k));
            }
            document.close();
        }catch(Exception e) {
            e.printStackTrace();
        }
    }
}

3、這份程式碼實際專案中未採用,可參考另外兩篇html轉pdf方法