Module  java.desktop
软件包  java.awt.image

Class AreaAveragingScaleFilter

  • All Implemented Interfaces:
    ImageConsumerCloneable


    public class AreaAveragingScaleFilter
    extends ReplicateScaleFilter
    一个ImageFilter类,用于使用简单的区域平均算法对图像进行缩放,该算法产生比最近相邻算法更平滑的结果。

    该类扩展了基本的ImageFilter类以缩放现有图像,并为包含重新采样图像的新图像提供了一个源。 源图像中的像素被混合以产生用于指定大小的图像的像素。 混合过程类似于使用像素复制将源图像缩放到目标大小的倍数,然后通过简单地平均落在目的地的给定像素内的超图像中的所有像素将其缩小到目标大小图片。 如果来自源的数据未以TopDownLeftRight顺序递送,则过滤器将退回到简单的像素复制行为,并使用requestTopDownLeftRightResend()方法以更好的方式重新填充像素。

    它意味着与FilteredImageSource对象结合使用,以生成现有图像的缩放版本。 由于实现依赖关系,在不同平台上过滤的图像的像素值可能有差异。

    另请参见:
    FilteredImageSourceReplicateScaleFilterImageFilter
    • 构造方法详细信息

      • AreaAveragingScaleFilter

        public AreaAveragingScaleFilter​(int width,
                                        int height)
        构造一个AreaAveragingScaleFilter,可以根据width和height参数指定的其源图像的像素进行缩放。
        参数
        width - 缩放图像的目标宽度
        height - 缩放图像的目标高度
    • 方法详细信息

      • setHints

        public void setHints​(int hints)
        检测数据是否具有必要的提示,以允许平均算法执行其工作。

        注意:此方法的目的是由被过滤像素的ImageProducerImage调用。 使用此类过滤图像中的像素的开发人员应避免直接调用此方法,因为该操作可能会干扰过滤操作。

        Specified by:
        setHints在接口 ImageConsumer
        重写:
        setHintsImageFilter
        参数
        hints - ImageConsumer用于处理像素的一组提示
        另请参见:
        ImageConsumer.setHints(int)
      • setPixels

        public void setPixels​(int x,
                              int y,
                              int w,
                              int h,
                              ColorModel model,
                              byte[] pixels,
                              int off,
                              int scansize)
        将传送的字节像素的组件合并到累加数组中,并发送完整像素行的任何平均数据。 如果在setHints调用中没有指定正确的提示,那么将工作中继到我们的超类,该类可以缩放像素,而不考虑传递提示。

        注意:此方法的目的是由要ImageProducer像素进行过滤的ImageProducerImage调用。 使用此类过滤图像中的像素的开发人员应避免直接调用此方法,因为该操作可能会干扰过滤操作。

        Specified by:
        setPixels在接口 ImageConsumer
        重写:
        setPixels中的 ReplicateScaleFilter
        参数
        x - 要设置的像素区域的左上角的X坐标
        y - 要设置的像素区域的左上角的Y坐标
        w - 像素面积的宽度
        h - 像素面积的高度
        model - 指定的 ColorModel
        pixels - 像素数组
        off - pixels阵列的偏移量
        scansize - pixels阵列中从一行像素到下一个像素的距离
        另请参见:
        ReplicateScaleFilter
      • setPixels

        public void setPixels​(int x,
                              int y,
                              int w,
                              int h,
                              ColorModel model,
                              int[] pixels,
                              int off,
                              int scansize)
        将传递的int像素的组件合并到累积数组中,并发送完整像素行的任何平均数据。 如果在setHints调用中没有指定正确的提示,那么将工作中继到我们的超类,该类可以缩放像素,而不考虑传递提示。

        注意:此方法的目的是通过其像素被过滤的ImageProducerImage调用。 使用此类过滤图像中的像素的开发人员应避免直接调用此方法,因为该操作可能会干扰过滤操作。

        Specified by:
        setPixels在接口 ImageConsumer
        重写:
        setPixels中的 ReplicateScaleFilter
        参数
        x - 要设置的像素区域的左上角的X坐标
        y - 要设置的像素区域的左上角的Y坐标
        w - 像素面积的宽度
        h - 像素面积的高度
        model - 指定的 ColorModel
        pixels - 像素数组
        off - 对 pixels数组的偏移量
        scansize - pixels数组中的一行像素到下一行的距离
        另请参见:
        ReplicateScaleFilter