- java.lang.Object
-
- java.awt.image.FilteredImageSource
-
- All Implemented Interfaces:
-
ImageProducer
public class FilteredImageSource extends Object implements ImageProducer
这个类是ImageProducer接口的一个实现,它接收一个现有的图像和一个过滤器对象,并使用它们来生成原始图像的新过滤版本的图像数据。 这是一个通过交换红色和蓝色组件来过滤图像的示例:Image src = getImage("doc:///demo/images/duke/T1.gif"); ImageFilter colorfilter = new RedBlueSwapFilter(); Image img = createImage(new FilteredImageSource(src.getSource(), colorfilter));- 另请参见:
-
ImageProducer
-
-
构造方法摘要
构造方法 Constructor 描述 FilteredImageSource(ImageProducer orig, ImageFilter imgf)从现有的ImageProducer和过滤器对象构造一个ImageProducer对象。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidaddConsumer(ImageConsumer ic)将指定的ImageConsumer添加到对过滤图像的数据感兴趣的消费者列表中。booleanisConsumer(ImageConsumer ic)确定ImageConsumer是否在目前对该图像的数据感兴趣的消费者列表中。voidremoveConsumer(ImageConsumer ic)从对该图像的数据感兴趣的消费者列表中删除一个ImageConsumer。voidrequestTopDownLeftRightResend(ImageConsumer ic)请求给定的ImageConsumer具有从上到下的顺序递送多次的图像数据。voidstartProduction(ImageConsumer ic)开始生成已过滤的图像。
-
-
-
构造方法详细信息
-
FilteredImageSource
public FilteredImageSource(ImageProducer orig, ImageFilter imgf)
从现有的ImageProducer和过滤器对象构造一个ImageProducer对象。- 参数
-
orig- 指定的ImageProducer -
imgf- 指定的ImageFilter - 另请参见:
-
ImageFilter,Component.createImage(java.awt.image.ImageProducer)
-
-
方法详细信息
-
addConsumer
public void addConsumer(ImageConsumer ic)
将指定的ImageConsumer添加到对过滤图像的数据感兴趣的消费者列表中。 创建原始ImageFilter的实例(使用过滤器的getFilterInstance方法)来处理指定的ImageConsumer的图像数据。 然后将新创建的过滤器实例传递给原始ImageProducer的addConsumer方法。这种方法是公共的,这个类实现了这个
ImageProducer接口的ImageProducer。 它不应该从用户代码调用,并且如果从用户代码调用的行为是未指定的。- Specified by:
-
addConsumer在接口ImageProducer - 参数
-
ic- 过滤图像的消费者 - 另请参见:
-
ImageConsumer
-
isConsumer
public boolean isConsumer(ImageConsumer ic)
确定ImageConsumer是否在目前对该图像的数据感兴趣的消费者列表中。这种方法是公共的,这个类实现了
ImageProducer接口。 它不应该从用户代码调用,并且如果从用户代码调用的行为是未指定的。- Specified by:
-
isConsumer在接口ImageProducer - 参数
-
ic- 指定的ImageConsumer - 结果
- 如果ImageConsumer在列表中,则为true; 否则为假
- 另请参见:
-
ImageConsumer
-
removeConsumer
public void removeConsumer(ImageConsumer ic)
从对该图像的数据感兴趣的消费者列表中删除一个ImageConsumer。这种方法是公共的,这个类实现了这个
ImageProducer接口的ImageProducer。 它不应该从用户代码调用,并且如果从用户代码调用的行为是未指定的。- Specified by:
-
removeConsumer在接口ImageProducer - 参数
-
ic- 指定的ImageConsumer - 另请参见:
-
ImageConsumer
-
startProduction
public void startProduction(ImageConsumer ic)
开始生成已过滤的图像。 如果指定的ImageConsumer尚未经滤波的图像的一个消费者,原有的实例ImageFilter创建(使用过滤器的getFilterInstance方法),以操作所述图像数据ImageConsumer。 然后将ImageConsumer的过滤器实例传递给原始ImageProducer的startProduction方法。这种方法是公共的,这个类实现了这个
ImageProducer接口的一个副作用。 它不应该从用户代码调用,并且如果从用户代码调用的行为是未指定的。- Specified by:
-
startProduction在接口ImageProducer - 参数
-
ic- 过滤图像的消费者 - 另请参见:
-
ImageConsumer
-
requestTopDownLeftRightResend
public void requestTopDownLeftRightResend(ImageConsumer ic)
请求给定的ImageConsumer具有从上到下的顺序递送多次的图像数据。 将该请求交给ImageFilter进行进一步处理,因为保留像素排序的能力取决于过滤器。这种方法是公共的,这个类实现了
ImageProducer接口ImageProducer。 它不应该从用户代码调用,并且如果从用户代码调用的行为是未指定的。- Specified by:
-
requestTopDownLeftRightResend在接口ImageProducer - 参数
-
ic- 指定的ImageConsumer - 另请参见:
-
ImageConsumer
-
-