From 7c87a773303c50670894145f6f32cdd2eda1c19b Mon Sep 17 00:00:00 2001 From: Glen Mazza Date: Mon, 9 Feb 2004 22:04:23 +0000 Subject: [PATCH] Modification of ExampleXML2PDF to show a Transformer.setParameter() call. Fix to xsl stylesheet to show '1.0' instead of just '1' for the version number (fix from Clay Leeds). git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197343 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/embedding/ExampleXML2PDF.java | 83 ++++++++----------- .../embedding/xml/xslt/projectteam2fo.xsl | 2 +- 2 files changed, 36 insertions(+), 49 deletions(-) diff --git a/examples/embedding/java/embedding/ExampleXML2PDF.java b/examples/embedding/java/embedding/ExampleXML2PDF.java index 9cabadc0c..2c203fe9d 100644 --- a/examples/embedding/java/embedding/ExampleXML2PDF.java +++ b/examples/embedding/java/embedding/ExampleXML2PDF.java @@ -79,52 +79,6 @@ import org.apache.fop.apps.FOPException; */ public class ExampleXML2PDF { - /** - * Converts an XML file to a PDF file using JAXP and FOP. - * @param xml the XML file - * @param xslt the stylesheet file - * @param pdf the target PDF file - * @throws IOException In case of an I/O problem - * @throws FOPException In case of a FOP problem - * @throws TransformerException In case of a XSL transformation problem - */ - public void convertXML2PDF(File xml, File xslt, File pdf) - throws IOException, FOPException, TransformerException { - //Construct driver - Driver driver = new Driver(); - - //Setup logger - Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO); - driver.enableLogging(logger); - driver.initialize(); - - //Setup Renderer (output format) - driver.setRenderer(Driver.RENDER_PDF); - - //Setup output - OutputStream out = new java.io.FileOutputStream(pdf); - out = new java.io.BufferedOutputStream(out); - try { - driver.setOutputStream(out); - - //Setup XSLT - TransformerFactory factory = TransformerFactory.newInstance(); - Transformer transformer = factory.newTransformer(new StreamSource(xslt)); - - //Setup input for XSLT transformation - Source src = new StreamSource(xml); - - //Resulting SAX events (the generated FO) must be piped through to FOP - Result res = new SAXResult(driver.getContentHandler()); - - //Start XSLT transformation and FOP processing - transformer.transform(src, res); - } finally { - out.close(); - } - } - - /** * Main method. * @param args command-line arguments @@ -150,8 +104,41 @@ public class ExampleXML2PDF { System.out.println(); System.out.println("Transforming..."); - ExampleXML2PDF app = new ExampleXML2PDF(); - app.convertXML2PDF(xmlfile, xsltfile, pdffile); + //Construct driver + Driver driver = new Driver(); + + //Setup logger + Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO); + driver.enableLogging(logger); + driver.initialize(); + + //Setup Renderer (output format) + driver.setRenderer(Driver.RENDER_PDF); + + //Setup output + OutputStream out = new java.io.FileOutputStream(pdffile); + out = new java.io.BufferedOutputStream(out); + try { + driver.setOutputStream(out); + + //Setup XSLT + TransformerFactory factory = TransformerFactory.newInstance(); + Transformer transformer = factory.newTransformer(new StreamSource(xsltfile)); + + // set the value of a in the stylesheet + transformer.setParameter("versionParam", "2.0"); + + //Setup input for XSLT transformation + Source src = new StreamSource(xmlfile); + + //Resulting SAX events (the generated FO) must be piped through to FOP + Result res = new SAXResult(driver.getContentHandler()); + + //Start XSLT transformation and FOP processing + transformer.transform(src, res); + } finally { + out.close(); + } System.out.println("Success!"); } catch (Exception e) { diff --git a/examples/embedding/xml/xslt/projectteam2fo.xsl b/examples/embedding/xml/xslt/projectteam2fo.xsl index d10ae8551..7752b8aee 100644 --- a/examples/embedding/xml/xslt/projectteam2fo.xsl +++ b/examples/embedding/xml/xslt/projectteam2fo.xsl @@ -1,7 +1,7 @@ - + -- 2.39.5