The default configuration uses the following settings:
- XML Worker will look for CSS styles in the head tag (external or internal), and for styles in individual tags (e.g. style="margin:15px"). If no styles are defined, the default CSS of Firefox 4 is applied.
- XML Worker will automatically create bookmarks for header tags h1 to h6
- XML Worker will only add pictures to the document if they are defined using a fully qualified URL.
- itextpdf-5.3.3.jar (http://sourceforge.net/projects/itext/files/)
- xmlworker-1.2.0.jar (http://sourceforge.net/projects/xmlworker/)
Source Code
package com.as400samplecode; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.PageSize; import com.itextpdf.text.pdf.PdfWriter; import com.itextpdf.tool.xml.XMLWorkerHelper; public class ConvertHTMLToPDF { public static void main(String[] args) { String pdfFilename = ""; ConvertHTMLToPDF convertHTMLToPDF = new ConvertHTMLToPDF(); if (args.length < 1) { System.err.println("Usage: java "+ convertHTMLToPDF.getClass().getName()+ " PDF_Filename"); System.exit(1); } pdfFilename = args[0].trim(); convertHTMLToPDF.createPDF(pdfFilename); } private void createPDF (String pdfFilename){ //path for the PDF file to be generated String path = "docs/" + pdfFilename; PdfWriter pdfWriter = null; //create a new document Document document = new Document(); try { //get Instance of the PDFWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(path)); //document header attributes document.addAuthor("betterThanZero"); document.addCreationDate(); document.addProducer(); document.addCreator("MySampleCode.com"); document.addTitle("Demo for iText XMLWorker"); document.setPageSize(PageSize.LETTER); //open document document.open(); //To convert a HTML file from the filesystem //String File_To_Convert = "docs/SamplePDF.html"; //FileInputStream fis = new FileInputStream(File_To_Convert); //URL for HTML page URL myWebPage = new URL("http://demo.mysamplecode.com/"); InputStreamReader fis = new InputStreamReader(myWebPage.openStream()); //get the XMLWorkerHelper Instance XMLWorkerHelper worker = XMLWorkerHelper.getInstance(); //convert to PDF worker.parseXHtml(pdfWriter, document, fis); //close the document document.close(); //close the writer pdfWriter.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } } }
No comments:
Post a Comment
NO JUNK, Please try to keep this clean and related to the topic at hand.
Comments are for users to ask questions, collaborate or improve on existing.