Hi Andrew,
Really thanks for taking time out and helping me with this. Thanks for the reply I will look into that. I am stuck with HeadlessException now.Am also searchin in google for any solution , In case you have time please have a look @ this.
However I have another exception now.
I have a class Test that extends
public class Test extends JApplet {
//Draws a composite image into a BufferedImage object and then writes it to the  file.
}

When i run this file outside my webapplication {Jboss server} it runs fine and it creates a temp file which has the composite image i need However when i run from my webapp i get java.awt.HeadlessException .

Now when i run it in my webapp by instantiating the class
Test render= new Test ();
render.getComposite();

There is no constructor defined in my class Test.
Any help on this is appreciated
Thanks again.
Deepak



On 6/14/06, Andrew Brygin <[EMAIL PROTECTED]> wrote:
Hi Deepak,

  To be able write GIF files you must have recent beta of jdk 6.0
  You can download it from http://download.java.net/jdk6/binaries/.

  If using jdk 6.0 is not option for you then you might consider
  using JAI plugins. For more information on JAI have a look at
  https://jai-imageio.dev.java.net/.

Thanks,
Andrew

Deepak Jain wrote:
> Hi Andrew,
> Bingo it worked, But I need to save the file as jpeg instead of gif. Any
> ideas how can I save it as gif file.
> Thanks
> Deepak
>
>
> On 6/14/06, *Deepak Jain* <[EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>> wrote:
>
>     Hi Andrew,
>     Thanks for the reply , I am using jdk 1.5.0_06.
>     Here are the steps I tried
>     1. First I created the BufferedImage object
>     BufferedImage buffered_image =
>              new BufferedImage (600, 300, BufferedImage.TYPE_INT_RGB);
>     2. Now I create a Graphics2D object fromt the buffer so that I can
>     write it into this bufferedImage object.
>      Graphics2D buf_image_graphics = buffered_image.createGraphics ();
>     3. Now once I have the graphics2d object I call
>     drawImage() method using it and construct a composite image.
>     Once done drawing, I need write the constructed composite image in
>     the buffer object it to the file.
>     4.Now I create a new file using
>     File f = new File ("c:\\anImage.gif");
>     and write BufferedImage object into the file using
>
>     try {
>        ImageIO.write (buffered_image, "gif", f);
>       } catch (IOException e) {
>        // TODO Auto-generated catch block
>        e.printStackTrace();
>       }
>
>     After excuting the above progrm,
>      A new file c:\\anImage.gif is created but this file is empty?
>     I dont know where did I go wrong.
>     Any help is appreciated.
>     Thanks
>     Deepak
>     On 6/13/06, *Andrew Brygin* <[EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>> wrote:
>
>         Hi Deepak,
>
>           What version of jdk are you using?
>
>           ImageIO plugin for writing GIF images is available only starting
>           from jdk 6.0 b39.
>           If you are using older version please try latest jdk 6.0 beta.
>
>           Also note that GIF  image format directly supports only images
>           with color palette. You are using TYPE_INT_RGB image that does
>           not have palette.
>           In such case palette will be constructed automatically but such
>           palette might be not ideal especially if original image has more
>           than 256 colors.
>
>           If GIF is not strict requirement for you I'd suggest to use PNG.
>           It should work fine with your images (without any quality issues)
>           and it is available since 1.4.2 .
>
>         Thanks,
>         Andrew
>
>         Deepak Jain wrote:
>         >  Hi,
>         >  I am completely lost with Java2d. I have some how managed to
>         construct a
>         >  composite image and i dont understand how i did it. Please
>         find the code
>         >  below, I was working on one of ur examples.Now i need to dump this
>         >  composite image to a temp file so that i can display it on the
>         >  web-browser using the <img> tag of html. I tried BufferedImage
>         but I am
>         >  not able to understand what  BufferedImage does, read java doc but
>         >  failed to understand. Please let me know any solution for this.
>         >
>         >
>         >
>         >  import java.awt.Dimension;
>         >  import java.awt.Graphics;
>         >  import java.awt.Graphics2D;
>         >  import java.awt.Image;
>         >  import java.awt.MediaTracker;
>         >  import java.awt.RenderingHints ;
>         >  import java.awt.Toolkit;
>         >  import java.awt.event.WindowAdapter ;
>         >  import java.awt.event.WindowEvent;
>         >  import java.awt.image.BufferedImage;
>         >  import java.io.File;
>         >  import java.io.IOException ;
>         >
>         >  import javax.imageio.ImageIO;
>         >  import javax.swing.JApplet;
>         >  import javax.swing.JFrame;
>         >  /*
>         >  <applet code="ACImages" width="600" height="300"></applet>
>         >  */
>         >  public class ACimages extends JApplet {
>         >
>         >     private String m_backGroundImgName = "emptyEnclosure.gif";
>         >
>         >     private Image backImgObj;
>         >
>         >     private final int []backImgDimen = {240,150};
>         >
>         >     private String dimentionInfo[] =
>         >  {"server_1X_2Y","server_1X_2Y","server_1X_2Y","server_1X_2Y"
>         >              ,"server_1X_2Y","server_1X_2Y","server_1X_2Y","server_1X_2Y"};
>
>         >
>         >     private Image eleImgObj[] = new Image[dimentionInfo.length];
>         >
>         >     private final int MAX_NUM_SLOTS_XDIRECT = 8;
>         >
>         >     public void init() {
>         >         Toolkit tk = getToolkit();
>         >         backImgObj =
>         >  tk.getImage(ACimages.class.getResource(m_backGroundImgName));
>         >         try {
>         >             MediaTracker tracker = new MediaTracker(this);
>         >             tracker.addImage (backImgObj, 0);
>         >             tracker.waitForID (0);
>         >         } catch (Exception e) {}
>         >
>         >         for(int i = 0; i < dimentionInfo.length; i++) {
>         >             eleImgObj[i] =
>         >   tk.getImage (ACimages.class.getResource(dimentionInfo[i] +
>         ".gif"));
>         >             try {
>         >                 MediaTracker tracker = new MediaTracker(this);
>         >                 tracker.addImage(eleImgObj[i], 0);
>         >                 tracker.waitForID(0);
>         >             } catch (Exception e) {}
>         >         }
>         >     }
>         >
>         >     public void drawDemo(int w, int h, Graphics2D g2) {
>         >
>         >         int iw = 24;
>         >         int ih = 150;
>         >         float xx = 0, yy = 10;
>         >         g2.drawImage(backImgObj, (int) xx, (int) yy,
>         backImgDimen[0],
>         >  backImgDimen[1], null);
>         >         for (int i =0; i < eleImgObj.length ; i++) {
>         >
>         >          if(i>MAX_NUM_SLOTS_XDIRECT-1) {
>         >           xx = 0;
>         >          }
>         >             xx += iw;
>         >             g2.drawImage(eleImgObj[i], (int) xx, (int) yy, iw,
>         ih, null);
>         >             Image status =getToolkit().getImage(
>         >  ACimages.class.getResource("Critical" + ".gif"));
>         >                 try {
>         >                     MediaTracker tracker = new MediaTracker(this);
>         >                     tracker.addImage(status, 0);
>         >                     tracker.waitForID(0);
>         >                 } catch (Exception e) {}
>         >             g2.drawImage(status, (int) xx+6, (int) yy+6, 13,
>         13, null);
>         >         }
>         >     }
>         >
>         >
>         >     public void paint(Graphics g) {
>         >         Graphics2D g2 = (Graphics2D) g;
>         >         Dimension d = getSize();
>         >         g2.setBackground(getBackground());
>         >         g2.clearRect(0, 0, d.width, d.height);
>         >         g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
>         >                             RenderingHints.VALUE_ANTIALIAS_ON);
>         >         g2.setRenderingHint (RenderingHints.KEY_RENDERING,
>         >                             RenderingHints.VALUE_RENDER_QUALITY );
>         >         drawDemo( d.width, d.height, g2);
>         >
>         >     }
>         >
>         >     private void writeToFile() {
>         >         BufferedImage buffered_image =
>         >          new BufferedImage (600, 300, BufferedImage.TYPE_INT_RGB );
>         >         Graphics2D buf_image_graphics =
>         buffered_image.createGraphics ();
>         >         System.out.println("buffered_image :"+buffered_image);
>         >         Dimension d = getSize();
>         >         buf_image_graphics.setBackground(getBackground());
>         >         buf_image_graphics.clearRect(0, 0, d.width, d.height);
>         >
>         buf_image_graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
>         >                             RenderingHints.VALUE_ANTIALIAS_ON);
>         >         buf_image_graphics.setRenderingHint(
>         RenderingHints.KEY_RENDERING,
>         >                             RenderingHints.VALUE_RENDER_QUALITY);
>         >         drawDemo(d.width, d.height, buf_image_graphics);
>         >         File f = new File ("c:\\anImage.gif");
>         >         try {
>         >    ImageIO.write (buffered_image, "gif", f);
>         >   } catch (IOException e) {
>         >    // TODO Auto-generated catch block
>         >    e.printStackTrace();
>         >   }
>         >
>         >         System.out.println("buffered_image :"+buffered_image);
>         >
>         >     }
>         >
>         >     public static void main(String argv[]) {
>         >         final ACimages demo = new ACimages();
>         >         demo.init();
>         >         JFrame f = new JFrame("Java 2D(TM) Demo - ACimages");
>         >         f.addWindowListener (new WindowAdapter() {
>         >             public void windowClosing(WindowEvent e)
>         {System.exit (0);}
>         >         });
>         >         f.getContentPane().add("Center", demo);
>         >         f.pack();
>         >         f.setSize(new Dimension(600,300));
>         >         f.show();
>         >         demo.writeToFile ();
>         >     }
>         >  }
>         >
>         >
>         >  --
>         >  Bad boy for life !!!
>         >
>         ===========================================================================
>         >  To unsubscribe, send email to [EMAIL PROTECTED]
>         <mailto:[EMAIL PROTECTED]> and include in the
>         >  body of the message "signoff JAVA2D-INTEREST". For general
>         help, send
>         >  email to [EMAIL PROTECTED] <mailto: [EMAIL PROTECTED]>
>         and include in the body of the message
>         >  "help".
>
>
>
>
>     --
>     Bad boy for life !!!
>
>
>
>
> --
> Bad boy for life !!!



--
Bad boy for life !!! =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to