KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > util > ImageLoader


1 /*
2  * Copyright (C) 2005 - 2006 JasperSoft Corporation. All rights reserved.
3  * http://www.jaspersoft.com.
4  *
5  * Unless you have purchased a commercial license agreement from JasperSoft,
6  * the following license terms apply:
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as published by
10  * the Free Software Foundation.
11  *
12  * This program is distributed WITHOUT ANY WARRANTY; and without the
13  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
18  * or write to:
19  *
20  * Free Software Foundation, Inc.,
21  * 59 Temple Place - Suite 330,
22  * Boston, MA USA 02111-1307
23  *
24  *
25  *
26  *
27  * ImageLoader.java
28  *
29  */

30
31 package it.businesslogic.ireport.util;
32
33 import org.w3c.tools.codec.Base64Decoder;
34 import java.awt.*;
35 import java.io.*;
36
37 public class ImageLoader {
38
39         public static java.awt.Image JavaDoc loadFromBase64String( String JavaDoc imageSource ) throws net.sf.jasperreports.engine.JRException
40         {
41             Image _image = null;
42             try {
43         
44                 ByteArrayInputStream bais = new ByteArrayInputStream(imageSource.getBytes("UTF-8"));
45                 ByteArrayOutputStream baos = new ByteArrayOutputStream();
46                 
47                 Base64Decoder decoder = new Base64Decoder(bais, baos);
48                 decoder.process();
49                         
50                 _image = Toolkit.getDefaultToolkit().createImage( baos.toByteArray() );
51         
52                 MediaTracker traker = new MediaTracker(new Panel());
53                 traker.addImage(_image, 0);
54             
55                 traker.waitForID(0);
56             }
57             catch (Exception JavaDoc e)
58             {
59                 //image = null;
60
e.printStackTrace();
61                 System.out.flush();
62                 throw new net.sf.jasperreports.engine.JRException(e);
63             }
64             
65             return _image;
66         }
67         
68 }
69
Popular Tags