Изменение размера RenderedImage - PullRequest
3 голосов
/ 04 января 2011

Я использую RenderedImage для отображения TIFF в DisplayJAI в моем приложении.

Кто-нибудь знает, как изменить размер экземпляра RenderedImage ??

Ответы [ 3 ]

3 голосов
/ 04 января 2011

Прошло много времени с тех пор, как я что-то сделал с JAI, но не будет ли достаточно операций "Scale" или "Affine" ?

Редактировать: Вот несколько ссылок в Руководство программиста для «Масштаб» и «Аффин» .

3 голосов
/ 30 сентября 2011
public static RenderedImage scale(RenderedImage image, float scaleFactor)
    RenderingHints hints = new RenderingHints(RenderingHints.KEY_RENDERING,
      RenderingHints.VALUE_RENDER_QUALITY);

    RenderedOp resizeOp = SubsampleAverageDescriptor.create(image,
      Double.valueOf(scaleFactor), Double.valueOf(scaleFactor), hints);

    BufferedImage bufferedResizedImage = resizeOp.getAsBufferedImage();

    return bufferedResizedImage;
}
0 голосов
/ 04 января 2011

Здесь приведен пример кода: http://answers.yahoo.com/question/index?qid=20090827075608AA12kEZ

Соответствующий код:

BufferedImage img = ImageIO.read(new File("~/your/file/system/example.jpeg"));
BufferedImage thumb = new BufferedImage(w2, h2, BufferedImage.TYPE_INT_RGB);
thumb.createGraphics().drawImage(
img.getScaledInstance(w2, h2, java.awt.Image.SCALE_SMOOTH), 0, 0, null);
File file = new File(fullpath + filename);
ImageIO.write(thumb, "png", file);
...