-
- 所有已知实现类:
-
AreaAveragingScaleFilter
,BufferedImageFilter
,CropImageFilter
,GrayFilter
,ImageFilter
,PixelGrabber
,ReplicateScaleFilter
,RGBImageFilter
public interface ImageConsumer
通过ImageProducer界面表示对图像数据感兴趣的对象的界面。 当消费者添加到图像制作者时,制作者使用此界面中定义的方法调用方传递有关图像的所有数据。- 另请参见:
-
ImageProducer
-
-
Field Summary
Fields Modifier and Type Field 描述 static int
COMPLETESCANLINES
像素将以完整的扫描线一次传输(倍数)。static int
IMAGEABORTED
图像创建过程故意中止。static int
IMAGEERROR
生成图像时遇到错误。static int
RANDOMPIXELORDER
像素将以随机顺序递送。static int
SINGLEFRAME
该图像包含一个静态图像。static int
SINGLEFRAMEDONE
图像的一帧是完整的,但是有更多的帧被传送。static int
SINGLEPASS
像素将以单次传递方式传送。static int
STATICIMAGEDONE
图像是完整的,没有更多的像素或帧要交付。static int
TOPDOWNLEFTRIGHT
像素将以自上而下的从左到右的顺序传递。
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 void
imageComplete(int status)
当ImageProducer完成传递源图像所包含的所有像素时,或者当多帧动画的单帧已经完成时,或者当加载或生成图像发生错误时,将调用imageComplete方法。void
setColorModel(ColorModel model)
设置使用setPixels方法调用报告的大多数像素使用的ColorModel对象。void
setDimensions(int width, int height)
使用setDimensions方法调用来报告源图像的尺寸。void
setHints(int hintflags)
设置ImageConsumer用于处理ImageProducer传递的像素的提示。void
setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
通过一次或多次调用该方法来提供图像的像素。void
setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
使用对setPixels方法的一个或多个调用来传送图像的像素。void
setProperties(Hashtable<?,?> props)
设置与此映像关联的属性的可扩展列表。
-
-
-
字段详细信息
-
RANDOMPIXELORDER
static final int RANDOMPIXELORDER
像素将以随机顺序递送。 这告诉ImageConsumer不要使用依赖于像素传递顺序的任何优化,在没有调用setHints方法的情况下,它应该是默认的假设。- 另请参见:
-
setHints(int)
, Constant Field Values
-
TOPDOWNLEFTRIGHT
static final int TOPDOWNLEFTRIGHT
像素将以自上而下的从左到右的顺序传递。- 另请参见:
-
setHints(int)
, Constant Field Values
-
COMPLETESCANLINES
static final int COMPLETESCANLINES
像素将以完整的扫描线一次传输(倍数)。- 另请参见:
-
setHints(int)
, Constant Field Values
-
SINGLEPASS
static final int SINGLEPASS
像素将以单次传递方式传送。 每个像素将只出现在任何一个setPixels方法的一个调用中。 不符合该标准的图像格式的示例是定义多遍中的像素的渐进JPEG图像,每个像素比先前的更精细。- 另请参见:
-
setHints(int)
, Constant Field Values
-
SINGLEFRAME
static final int SINGLEFRAME
该图像包含一个静态图像。 将在对setPixels方法的调用中定义像素,然后使用STATICIMAGEDONE标志调用imageComplete方法,之后不会再传送更多的图像数据。 不符合这些标准的图像类型的示例将是视频馈送的输出,或由用户操纵的3D呈现的表示。 通过使用SINGLEFRAMEDONE标志调用imageComplete来表示这些类型图像中每帧的结尾。
-
IMAGEERROR
static final int IMAGEERROR
生成图像时遇到错误。
-
SINGLEFRAMEDONE
static final int SINGLEFRAMEDONE
图像的一帧是完整的,但是有更多的帧被传送。
-
STATICIMAGEDONE
static final int STATICIMAGEDONE
图像是完整的,没有更多的像素或帧要交付。
-
IMAGEABORTED
static final int IMAGEABORTED
图像创建过程故意中止。
-
-
方法详细信息
-
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知道有关像素将如何传递的一些信息,则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)存储在像素阵列中。 使用此方法传递的像素全部存储为int。 此方法全部存储为int。- 参数
-
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)
-
-