0

我有带有调整大小方法的 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())
4

1 回答 1

1

是的,ImageIO 是要走的路

在 Grails 中调整图像大小

于 2010-03-10T15:47:02.850 回答