<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html lang="en-us" xml:lang="en-us"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="security" content="public" /> <meta name="Robots" content="index,follow" /> <meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' /> <meta name="DC.Type" content="reference" /> <meta name="DC.Title" content="Example: Converting XSL FO source data to a PDF" /> <meta name="abstract" content="" /> <meta name="description" content="" /> <meta name="copyright" content="(C) Copyright IBM Corporation 2006" /> <meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 2006" /> <meta name="DC.Format" content="XHTML" /> <meta name="DC.Identifier" content="htmldocumentfoexmpl" /> <meta name="DC.Language" content="en-us" /> <!-- All rights reserved. Licensed Materials Property of IBM --> <!-- US Government Users Restricted Rights --> <!-- Use, duplication or disclosure restricted by --> <!-- GSA ADP Schedule Contract with IBM Corp. --> <link rel="stylesheet" type="text/css" href="./ibmdita.css" /> <link rel="stylesheet" type="text/css" href="./ic.css" /> <title>Example: Converting XSL FO source data to a PDF</title> </head> <body id="htmldocumentfoexmpl"><a name="htmldocumentfoexmpl"><!-- --></a> <!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script> <h1 class="topictitle1">Example: Converting XSL FO source data to a PDF</h1> <div><p></p> <div class="section"><div class="note"><span class="notetitle">Note:</span> Read the <a href="codedisclaimer.htm#codedisclaimer">Code example disclaimer</a> for important legal information.</div> <pre>/////////////////////////////////////////////////////////////////////////////// // // Example: Converting XSL FO source to a PDF. // // This program uses the IBM Toolbox for Java ReportWriter classes to convert // XSL FO source data (created by using HTMLDocument) to a PDF. // // This example requires the following.jars to be in the classpath. // // composer.jar // outputwriters.jar // reportwriter.jar // x4j400.jar // xslparser.jar // // These jars are part of the IBM ToolBox for Java, and reside in directory // /QIBM/ProdData/HTTP/Public/jt400/lib on your server. // // Command syntax: // ProcessXslFo FOfilename PDFfilename // /////////////////////////////////////////////////////////////////////////////// import java.io.FileInputStream; import java.io.FileOutputStream; import java.awt.print.Paper; import java.awt.print.PageFormat; import org.w3c.dom.Document; import com.ibm.xsl.composer.framework.Context; import com.ibm.as400.util.reportwriter.pdfwriter.PDFContext; import com.ibm.as400.util.reportwriter.processor.XSLReportProcessor; public class ProcessXslFo { public static void main(String args[]) { if (args.length != 2) { System.out.println("Usage: java ProcessXslFo <fo file name> <pdf file name>"); System.exit(0); } try { String inName = args[0]; String outName = args[1]; /* Input. File containing XML FO. */ FileInputStream fin = null; /* Output. Which in this example will be PDF. */ FileOutputStream fout = null; try { fin = new FileInputStream(inName); fout = new FileOutputStream(outName); } catch (Exception e) { e.printStackTrace(); System.exit(0); } /* * Setup Page format. */ Paper paper = new Paper(); paper.setSize(612, 792); paper.setImageableArea(0, 0, 756, 936); PageFormat pageFormat = new PageFormat(); pageFormat.setPaper(paper); /* * Create a PDF context. Set output file name. */ PDFContext pdfContext = new PDFContext(fout, pageFormat); /* * Create XSLReportProcessor instance. */ XSLReportProcessor report = new XSLReportProcessor(pdfContext); /* * Open XML FO source. */ try { report.setXSLFOSource(fin); } catch (Exception e) { e.printStackTrace(); System.exit(0); } /* * Process the report. */ try { report.processReport(); } catch (Exception e) { e.printStackTrace(); System.exit(0); } } catch (Exception e) { e.printStackTrace(); System.exit(0); } /* exit */ System.exit(0); } }</pre> </div> </div> </body> </html>