我可以写图像,但其默认分辨率为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");
}
}
有什么建议吗?
答案 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();