2013-08-07 3 views
0

Я могу написать изображение, но его разрешение по умолчанию - 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

Предполагаю, scaled - полевое изображение. Кроме того, я предполагаю, что вы не получаете NullPointerException.

Вы можете использовать scaled.getImageData().getScaled(int x, int 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(); 
+0

Просьба указать API для 'getImageData()' и 'getScaled()'. – trashgod

+0

да, я сделал это. я сделал это возможным. и это также первый раз. всем спасибо. –

Смежные вопросы