java.awt.image

接口
异常
所有已知实现类:
FilteredImageSource, MemoryImageSource, RenderableImageProducer

public interface ImageProducer

可为 Image 生成图像数据的对象的接口。每幅图像都包含一个用于在需要时(例如在缩放 Image 的新大小时,或者在请求 Image 的宽度或高度时)重构图像的 ImageProducer。

另请参见:
ImageConsumer

方法摘要
 void addConsumer(ImageConsumer ic)
          为了在稍后的 Image 重构期间访问图像数据,向 ImageProducer 注册一个 ImageConsumer
 boolean isConsumer(ImageConsumer ic)
          确定指定的 ImageConsumer 对象目前是否已向此 ImageProducer 注册为其使用者之一。
 void removeConsumer(ImageConsumer ic)
          从目前已注册以接收图像数据的使用者列表中移除指定的 ImageConsumer 对象。
 void requestTopDownLeftRightResend(ImageConsumer ic)
          代表 ImageConsumer 请求 ImageProducer 尝试再次以 TOPDOWNLEFTRIGHT 的顺序重新发送图像数据,从而可以使用依赖于按顺序接收像素的高质量转换算法以生成更佳的图像输出。
 void startProduction(ImageConsumer ic)
          将指定的 ImageConsumer 对象注册为使用者,并立即开始图像数据的重构,然后这些图像数据将传递到此使用者和已经向该生产者注册的所有其他使用者。
 

方法详细信息

addConsumer

void addConsumer(ImageConsumer ic)
为了在稍后的 Image 重构期间访问图像数据,向 ImageProducer 注册一个 ImageConsumerImageProducer 可能自行决定是立即开始使用 ImageConsumer 接口向使用者传递图像数据,还是通过调用 startProduction 方法触发下一个可用图像的重构。

参数:
ic - 指定的 ImageConsumer
另请参见:
startProduction(java.awt.image.ImageConsumer)

isConsumer

boolean isConsumer(ImageConsumer ic)
确定指定的 ImageConsumer 对象目前是否已向此 ImageProducer 注册为其使用者之一。

参数:
ic - 指定的 ImageConsumer
返回:
如果指定的 ImageConsumer 已向此 ImageProducer 注册,则返回 true;否则返回 false

removeConsumer

void removeConsumer(ImageConsumer ic)
从目前已注册以接收图像数据的使用者列表中移除指定的 ImageConsumer 对象。移除目前尚未注册的使用者不被认为是错误。一旦移除使用者后, ImageProducer 就应停止向此使用者发送数据。

参数:
ic - 指定的 ImageConsumer

startProduction

void startProduction(ImageConsumer ic)
将指定的 ImageConsumer 对象注册为使用者,并立即开始图像数据的重构,然后这些图像数据将传递到此使用者和已经向该生产者注册的所有其他使用者。此方法与 addConsumer 方法不同,因为它应该尽快触发图像数据的重构。

参数:
ic - 指定的 ImageConsumer
另请参见:
addConsumer(java.awt.image.ImageConsumer)

requestTopDownLeftRightResend

void requestTopDownLeftRightResend(ImageConsumer ic)
代表 ImageConsumer 请求 ImageProducer 尝试再次以 TOPDOWNLEFTRIGHT 的顺序重新发送图像数据,从而可以使用依赖于按顺序接收像素的高质量转换算法以生成更佳的图像输出。如果 ImageProducer 无法按该顺序重新发送数据,则它可以忽略此调用。如果可以重新发送数据,则 ImageProducer 应该进行响应,方法是执行下列最小的 ImageConsumer 方法调用集:
        ic.setHints(TOPDOWNLEFTRIGHT | < otherhints >);
        ic.setPixels(...);      // As many times as needed
        ic.imageComplete();
 

参数:
ic - 指定的 ImageConsumer
另请参见:
ImageConsumer.setHints(int)