3

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

BufferedImage(ColorModel cm, WritableRaster raster, boolean isRasterPremultiplied, Hashtable 属性)

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

4

1 回答 1

4

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

  1. 调用ImageTypeSpecifier.createFromRenderedImage(RenderedImage image)ImageTypeSpecifier以使用自定义颜色模型从图像中取回一个。
  2. 在步骤 1 中调用ImageTypeSpecifier.createBufferedImage(int width, int height)ImageTypeSpecifier以创建与原始图像具有相同颜色模型的新图像。
于 2009-01-09T19:54:54.590 回答