Grails: написать BufferedImage в ответ - PullRequest
0 голосов
/ 10 марта 2010

У меня есть ImageController с методом изменения размера:

def resize = {
    def pht = Photos.findByTypeAndPhotourl(params.type, params.photourl)
    if (pht != null) {
      BufferedImage source = ImageIO.read(new File(pht.photo))
      ImageResizer imageResizer = new ImageResizer()
      BufferedImage result = imageResizer.resize(source, Integer.parseInt(params.width), Integer.parseInt(params.height))
      imageResizer.writePNG(result, params.name)

      render "OK"
    } else {
      render "Error"
    }
  }

Как видите - он записывает экземпляр BufferedImage (изображение с измененным размером) на диск. Но я хочу вернуть изображение в ответ, чтобы изображение с измененным размером отображалось в браузере, когда пользователь запрашивает метод изменения размера (или он сможет его загрузить). Это что-то вроде проблемы с подачей файлов ...

Правильно ли использовать:

ImageIO.write(result, "png", response.getOutputStream())

1 Ответ

1 голос
/ 10 марта 2010
...