如何解决新生成的图像?

时间:2013-08-07 08:55:06

标签: java swing

我可以写图像,但其默认分辨率为600x450。 我想指定我自己的决议。

public void save(String path, String name) throws IOException 
{
            int x ;
            int y;
            x=scaled.getHeight();
            y=scaled.getWidth();

            System.out.println(x);
            System.out.println(y);

            if (scaled != null) 
            {  
                name += scaled.getWidth() + "x" + scaled.getHeight();
                ImageIO.write(scaled, "png", new File(path + File.separator + name + ".png"));
            } 
            else 
            {
                throw new NullPointerException("Scaled instance is null");
            }
}

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

我认为scaled是一个场图。另外,我假设你没有得到NullPointerException

您可以使用scaled.getImageData().getScaled(int x, int y)使用您自己的 x y 返回新的缩放图像。

像这样:

ImageData newData = scaled.getImageData().scaledTo(int x, int y);
Image newScaledImage = new Image(Display.getCurrent(), newData);
ImageIO.write(newScaledImage , "png", new File(path + File.separator + name + ".png"));
newScaledImage.dispose();