-
- 所有已知实现类:
-
AreaAveragingScaleFilter,BufferedImageFilter,CropImageFilter,GrayFilter,ImageFilter,PixelGrabber,ReplicateScaleFilter,RGBImageFilter
public interface ImageConsumer通过ImageProducer接口表示对图像数据感兴趣的对象的接口。 将使用者添加到图像生成器时,生成器使用此接口中定义的方法调用传递有关该图像的所有数据。- 另请参见:
-
ImageProducer
-
-
字段汇总
字段 变量和类型 字段 描述 static intCOMPLETESCANLINES像素将一次以(多个)完整扫描线传送。static intIMAGEABORTED故意中止图像创建过程。static intIMAGEERROR生成图像时遇到错误。static intRANDOMPIXELORDER像素将以随机顺序传递。static intSINGLEFRAME该图像包含单个静态图像。static intSINGLEFRAMEDONE图像的一帧已完成,但有更多帧要传递。static intSINGLEPASS像素将一次传递。static intSTATICIMAGEDONE图像完整,没有更多像素或帧要传递。static intTOPDOWNLEFTRIGHT像素将以自上而下,从左到右的顺序传送。
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 voidimageComplete(int status)当ImageProducer完成传送源图像包含的所有像素,或者完成多帧动画的单帧,或者加载或生成图像时发生错误时,将调用imageComplete方法。voidsetColorModel(ColorModel model)设置用于使用setPixels方法调用报告的大多数像素的ColorModel对象。voidsetDimensions(int width, int height)使用setDimensions方法调用报告源图像的尺寸。voidsetHints(int hintflags)设置ImageConsumer用于处理ImageProducer传递的像素的提示。voidsetPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)通过对此方法的一次或多次调用来传递图像的像素。voidsetPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)使用对setPixels方法的一个或多个调用来传递图像的像素。voidsetProperties(Hashtable<?,?> props)设置与此图像关联的可扩展属性列表。
-
-
-
字段详细信息
-
RANDOMPIXELORDER
static final int RANDOMPIXELORDER
像素将以随机顺序传递。 这告诉ImageConsumer不要使用依赖于像素传递顺序的任何优化,这应该是没有任何对setHints方法的调用的默认假设。- 另请参见:
-
setHints(int), 常数字段值
-
TOPDOWNLEFTRIGHT
static final int TOPDOWNLEFTRIGHT
像素将以自上而下,从左到右的顺序传送。- 另请参见:
-
setHints(int), 常数字段值
-
COMPLETESCANLINES
static final int COMPLETESCANLINES
像素将一次以(多个)完整扫描线传送。- 另请参见:
-
setHints(int), 常数字段值
-
SINGLEPASS
static final int SINGLEPASS
像素将一次传递。 每个像素只出现在对任何setPixels方法的一次调用中。 不满足该标准的图像格式的示例是渐进式JPEG图像,其定义多个通道中的像素,每个通道比前一个更精细。- 另请参见:
-
setHints(int), 常数字段值
-
SINGLEFRAME
static final int SINGLEFRAME
该图像包含单个静态图像。 像素将在调用setPixels方法时定义,然后将使用STATICIMAGEDONE标志调用imageComplete方法,之后将不再传递图像数据。 不满足这些标准的图像类型的示例将是视频馈送的输出,或者由用户操纵的3D渲染的表示。 通过使用SINGLEFRAMEDONE标志调用imageComplete来指示这些类型图像中每帧的结束。- 另请参见:
-
setHints(int),imageComplete(int), 常数字段值
-
IMAGEERROR
static final int IMAGEERROR
生成图像时遇到错误。- 另请参见:
-
imageComplete(int), 常数字段值
-
SINGLEFRAMEDONE
static final int SINGLEFRAMEDONE
图像的一帧已完成,但有更多帧要传递。- 另请参见:
-
imageComplete(int), 常数字段值
-
STATICIMAGEDONE
static final int STATICIMAGEDONE
图像完整,没有更多像素或帧要传递。- 另请参见:
-
imageComplete(int), 常数字段值
-
IMAGEABORTED
static final int IMAGEABORTED
故意中止图像创建过程。- 另请参见:
-
imageComplete(int), 常数字段值
-
-
方法详细信息
-
setDimensions
void setDimensions(int width, int height)使用setDimensions方法调用报告源图像的尺寸。- 参数
-
width- 源图像的宽度 -
height- 源图像的高度
-
setProperties
void setProperties(Hashtable<?,?> props)
设置与此图像关联的可扩展属性列表。- 参数
-
props- 与此映像关联的属性列表
-
setColorModel
void setColorModel(ColorModel model)
设置用于使用setPixels方法调用报告的大多数像素的ColorModel对象。 请注意,使用setPixels传递的每组像素都包含自己的ColorModel对象,因此不应假设此模型将是唯一用于传递像素值的模型。 可以看到多个ColorModel对象的一个值得注意的情况是过滤后的图像,当对于它过滤的每组像素时,过滤器确定是否可以使用原始ColorModel不受影响地发送像素,或者是否应该修改像素(过滤) )并使用ColorModel传递更方便的过滤过程。- 参数
-
model- 指定的ColorModel - 另请参见:
-
ColorModel
-
setHints
void setHints(int hintflags)
设置ImageConsumer用于处理ImageProducer传递的像素的提示。 ImageProducer可以按任何顺序传送像素,但ImageConsumer可以更高效地或更高质量地将像素缩放或转换为目标ColorModel,如果它知道有关如何预先传送像素的一些信息。 应该在调用任何setPixels方法之前调用setHints方法,并使用关于像素传递方式的提示的位掩码。 如果ImageProducer未遵循指示提示的准则,则结果未定义。- 参数
-
hintflags- ImageConsumer用于处理像素的一组提示
-
setPixels
void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)通过对此方法的一次或多次调用来传递图像的像素。 每个调用指定像素数组中包含的源像素矩形的位置和大小。 应使用指定的ColorModel对象将像素转换为相应的颜色和alpha分量。 像素(m,n)以索引(n * scansize + m + off)存储在像素阵列中。 使用此方法传递的像素都存储为字节。- 参数
-
x- 要设置的像素区域左上角的X坐标 -
y- 要设置的像素区域左上角的Y坐标 -
w- 像素区域的宽度 -
h- 像素区域的高度 -
model- 指定的ColorModel -
pixels- 像素数组 -
off- 进入pixels数组的偏移量 -
scansize-pixels阵列中从一行像素到下一行像素的距离 - 另请参见:
-
ColorModel
-
setPixels
void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)使用对setPixels方法的一个或多个调用来传递图像的像素。 每个调用指定像素数组中包含的源像素矩形的位置和大小。 应使用指定的ColorModel对象将像素转换为相应的颜色和alpha分量。 像素(m,n)以索引(n * scansize + m + off)存储在像素阵列中。 使用此方法传送的像素都存储为整数。 此方法都存储为整数。- 参数
-
x- 要设置的像素区域左上角的X坐标 -
y- 要设置的像素区域左上角的Y坐标 -
w- 像素区域的宽度 -
h- 像素区域的高度 -
model- 指定的ColorModel -
pixels- 像素数组 -
off- 进入pixels数组的偏移量 -
scansize-pixels阵列中从一行像素到下一行像素的距离 - 另请参见:
-
ColorModel
-
imageComplete
void imageComplete(int status)
当ImageProducer完成传送源图像包含的所有像素,或者完成多帧动画的单帧,或者加载或生成图像时发生错误时,将调用imageComplete方法。 ImageConsumer应该从此时向ImageProducer注册的使用者列表中删除自己,除非它对连续帧感兴趣。- 参数
-
status- 图像加载的状态 - 另请参见:
-
ImageProducer.removeConsumer(java.awt.image.ImageConsumer)
-
-