public class LookupOp extends Object implements BufferedImageOp, RasterOp
对于光栅,查找操作在频带上。 查找阵列的数量可以是一个,在这种情况下,相同的阵列应用于所有频带,或者它必须等于源光栅频带的数量。
对于BufferedImages,查找操作的颜色和alpha组件。 查找阵列的数量可以是一个,在这种情况下,相同的数组应用于所有颜色(但不是alpha)组件。 否则,查找数组的数量可以等于源颜色分量的数量,在这种情况下,不会执行alpha分量的查找(如果存在)。 如果这两种情况都不适用,查找阵列的数量必须等于源颜色分量加上alpha分量的数量,在这种情况下,对所有颜色和α分量执行查找。 这允许多频带BufferedImages的非均匀重新缩放。
具有预乘法α数据的BufferedImage源以与非预乘图像相同的方式被处理以用于查找。 也就是说,在BufferedImage源的原始数据上,每个频段都进行查找,而不考虑数据是否被预乘。 如果目标ColorModel需要颜色转换,则此步骤将考虑源和目的地的预乘法状态。
不能使用IndexColorModel的图像。
如果在构造函数中指定了RenderingHints对象,则在需要颜色转换时,可以使用颜色渲染提示和抖动提示。
该类允许源与目标相同。
Constructor and Description |
---|
LookupOp(LookupTable lookup, RenderingHints hints)
构造一个
LookupOp 给出的查找表和对象
RenderingHints 对象,这可能是
null 。
|
Modifier and Type | Method and Description |
---|---|
BufferedImage |
createCompatibleDestImage(BufferedImage src, ColorModel destCM)
创建带有正确大小和频带数的归零目的地图像。
|
WritableRaster |
createCompatibleDestRaster(Raster src)
创建一个零目的地
Raster 具有正确的大小和数量的乐队,给定这个来源。
|
BufferedImage |
filter(BufferedImage src, BufferedImage dst)
对BufferedImage执行查找
BufferedImage 。
|
WritableRaster |
filter(Raster src, WritableRaster dst)
在Raster上执行查找
Raster 。
|
Rectangle2D |
getBounds2D(BufferedImage src)
返回已过滤的目标图像的边界框。
|
Rectangle2D |
getBounds2D(Raster src)
返回已筛选的目标栅格的边框。
|
Point2D |
getPoint2D(Point2D srcPt, Point2D dstPt)
返回源中给定点的目标点的位置。
|
RenderingHints |
getRenderingHints()
返回此操作的渲染提示。
|
LookupTable |
getTable()
返回
LookupTable 。
|
public LookupOp(LookupTable lookup, RenderingHints hints)
LookupOp
给出的查找表和对象
RenderingHints
对象,这可能是
null
。
lookup
- 指定的
LookupTable
hints
- 指定的
RenderingHints
或
null
public final LookupTable getTable()
LookupTable
。
LookupTable
的
LookupOp
。
public final BufferedImage filter(BufferedImage src, BufferedImage dst)
BufferedImage
。
如果源图像中的颜色模型与目标图像中的颜色模型不同,则将在目标中转换像素。
如果目标图像是null
,一个BufferedImage
将与合适的被创建ColorModel
。
一个IllegalArgumentException
如果阵列中的数量可能会抛出LookupTable
不符合上述类注释上述的限制,或者源图像有一个IndexColorModel
。
filter
在界面
BufferedImageOp
src
- 要过滤的
BufferedImage
dst
-所述
BufferedImage
在其中存储所述过滤器操作的结果
BufferedImage
。
IllegalArgumentException
- 如果
LookupTable
中的数组数不符合类注释中描述的限制,或源图像有
IndexColorModel
。
public final WritableRaster filter(Raster src, WritableRaster dst)
Raster
。
如果目的地Raster
是null
,将会创建一个新的Raster
。
该IllegalArgumentException
可能,如果源抛出Raster
和目标Raster
不具有相同的band数,或者如果阵列中的数LookupTable
不符合上述类注释中规定的限制。
filter
在界面
RasterOp
src
- 要过滤的源代码
Raster
dst
- 目的地
WritableRaster
为过滤的
src
WritableRaster
。
IllegalArgumentException
- 如果源和目标光栅不具有相同数量的带,或者
LookupTable
中的阵列数不符合类注释中描述的限制。
public final Rectangle2D getBounds2D(BufferedImage src)
getBounds2D
在界面
BufferedImageOp
src
- 要过滤的
BufferedImage
public final Rectangle2D getBounds2D(Raster src)
getBounds2D
在界面
RasterOp
src
- 要过滤的
Raster
Raster
。
public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
null
,则将使用适当的ColorModel
。
createCompatibleDestImage
在接口
BufferedImageOp
src
- 过滤器操作的源镜像。
destCM
- 目的地的
ColorModel
,可以是
null
。
BufferedImage
。
public WritableRaster createCompatibleDestRaster(Raster src)
Raster
具有正确的大小和数量的乐队,给定这个来源。
createCompatibleDestRaster
在界面
RasterOp
src
-在
Raster
进行改造
Raster
。
public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
dstPt
不是null
,它将用于保存返回值。
由于这不是几何操作, srcPt
将等于dstPt
。
getPoint2D
在界面
BufferedImageOp
getPoint2D
在界面
RasterOp
srcPt
-
Point2D
源图像中的一个点的Point2D
dstPt
-一个
Point2D
表示在目标位置
Point2D
中的Point2D对应于源中的指定点。
public final RenderingHints getRenderingHints()
getRenderingHints
在界面
BufferedImageOp
getRenderingHints
在界面
RasterOp
RenderingHints
对象。