Home Answers Viewqa Java-Beginners error occured in following page ... how to resolve it?

 
 


pratik hirpara
error occured in following page ... how to resolve it?
0 Answer(s)      2 years and 3 months ago
Posted in : Java Beginners

// to convert image into thumbnail i used following code. But netbeans has given me following error ....wht i shud do???????? i m java beginner so plz explain in smooth way....

error is::::

Exception in thread "main" java.lang.IllegalArgumentException: Width (-1) and height (-1) cannot be <= 0 at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:999) at java.awt.image.BufferedImage.(BufferedImage.java:312) at demo.CreateThumbnail.saveThumbnail(CreateThumbnail.java:64) at demo.CreateThumbnail.main(CreateThumbnail.java:90) Java Result: 1

code:

package demo;

import java.awt.Graphics; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.ImageIcon;

public class CreateThumbnail { public static final int VERTICAL = 0; public static final int HORIZONTAL = 1;

    public static final String IMAGE_JPEG = "jpeg";
    public static final String IMAGE_JPG = "jpg";
    public static final String IMAGE_PNG = "png";

    private ImageIcon image;
    private ImageIcon thumb;

    public CreateThumbnail(Image image)
    {
        this.image = new ImageIcon(image);
    }

    public CreateThumbnail(String fileName)
    {
        image = new ImageIcon(fileName);
    }

    public Image getThumbnail(int size, int dir)
    {
        if (dir == HORIZONTAL)
        {
            thumb = new ImageIcon(image.getImage().getScaledInstance(size, -1, Image.SCALE_SMOOTH));
        }
        else
        {
            thumb = new ImageIcon(image.getImage().getScaledInstance(-1, size, Image.SCALE_SMOOTH));
        }
        return thumb.getImage();
    }

    public Image getThumbnail(int size, int dir, int scale)
    {
        if (dir == HORIZONTAL)
        {
            thumb = new ImageIcon(image.getImage().getScaledInstance(size, -1, scale));
        }
        else
        {
            thumb = new ImageIcon(image.getImage().getScaledInstance(-1, size, scale));
        }
        return thumb.getImage();
    }

    public void saveThumbnail(File file, String imageType)
    {
        if (thumb != null)
        {
            BufferedImage bi = new BufferedImage(
                thumb.getIconWidth(),
                thumb.getIconHeight(),
                BufferedImage.TYPE_INT_RGB
            );
            Graphics g = bi.getGraphics();
            g.drawImage(thumb.getImage(), 0, 0, null);
            try
            {
                ImageIO.write(bi, imageType, file);
            }
            catch (IOException ioe)
            {
                System.out.println("Error occured saving thumbnail");
            }
        }
        else
        {
            System.out.println("Thumbnail has not yet been created");
        }
    }

    public static void main(String [] args)
    {
        CreateThumbnail ct = new CreateThumbnail("image.jpg");
        ct.getThumbnail(100, CreateThumbnail.HORIZONTAL);
        ct.saveThumbnail(new File("thumb.jpg"), CreateThumbnail.IMAGE_JPEG);
    }

}

View Answers









Related Pages:

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.