KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > infoglue > deliver > util > graphics > FOPHelper


1 /* ===============================================================================
2  *
3  * Part of the InfoGlue Content Management Platform (www.infoglue.org)
4  *
5  * ===============================================================================
6  *
7  * Copyright (C)
8  *
9  * This program is free software; you can redistribute it and/or modify it under
10  * the terms of the GNU General Public License version 2, as published by the
11  * Free Software Foundation. See the file LICENSE.html for more information.
12  *
13  * This program is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY, including the implied warranty of MERCHANTABILITY or FITNESS
15  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License along with
18  * this program; if not, write to the Free Software Foundation, Inc. / 59 Temple
19  * Place, Suite 330 / Boston, MA 02111-1307 / USA.
20  *
21  * ===============================================================================
22  */

23 package org.infoglue.deliver.util.graphics;
24
25 import java.io.File JavaDoc;
26 import java.io.FileOutputStream JavaDoc;
27 import java.io.IOException JavaDoc;
28 import java.io.StringReader JavaDoc;
29
30 import org.apache.avalon.framework.logger.Logger;
31 import org.apache.fop.apps.Driver;
32 import org.apache.fop.apps.FOPException;
33 import org.xml.sax.InputSource JavaDoc;
34
35 /**
36  * @author Stefan Sik
37  *
38  */

39 public class FOPHelper {
40     
41     public void generatePDF(String JavaDoc input, File JavaDoc output) throws IOException JavaDoc, FOPException
42     {
43         FileOutputStream JavaDoc fileOutputStream = new FileOutputStream JavaDoc(output);
44         try
45         {
46             Driver driver = new Driver();
47             Logger logger = new FOPCmsLogger();
48             
49             driver.setLogger(logger);
50             driver.setRenderer(Driver.RENDER_PDF);
51             driver.setInputSource(new InputSource JavaDoc(new StringReader JavaDoc(input)));
52             driver.setOutputStream(fileOutputStream);
53             driver.run();
54         }
55         catch(FOPException e)
56         {
57             throw e;
58         }
59         catch(IOException JavaDoc e)
60         {
61             throw e;
62         }
63         finally
64         {
65             fileOutputStream.close();
66         }
67     }
68 }
69
Popular Tags