调整 TYPE_CUSTOM BufferedImage 的大小?

Gil*_*ili 5 java bufferedimage

当我从磁盘读取 JPEG 时,Java 有时会给出一个 BufferedImage,其 getType() 返回 TYPE_CUSTOM —— 也就是说,它有一个自定义颜色模型。我想调整此 BufferedImage 的大小,但我不确定如何构造目标对象。有人可以提供使用以下构造函数的示例代码吗?

BufferedImage(ColorModel cm,WritableRaster 栅格,布尔值 isRasterPremultiplied,Hashtable 属性)

我想创建一个与源类型相同的 BufferedImage,只是更大,然后传输内容。有任何想法吗?

Gil*_*ili 6

回答我自己的问题,看起来ImageTypeSpecifier就是答案。具体来说:

  1. 调用ImageTypeSpecifier.createFromRenderedImage(RenderedImage image)ImageTypeSpecifier从具有自定义颜色模型的图像中获取。
  2. 在步骤 1 中调用ImageTypeSpecifier.createBufferedImage(int width, int height)ImageTypeSpecifier以创建与原始图像具有相同颜色模型的新图像。