模块  java.desktop
软件包  java.awt.image

Class AreaAveragingScaleFilter

  • 实现的所有接口
    ImageConsumerCloneable

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

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

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

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

      • AreaAveragingScaleFilter

        public AreaAveragingScaleFilter​(int width,
                                        int height)
        构造一个AreaAveragingScaleFilter,用于缩放由width和height参数指定的源Image的像素。
        参数
        width - 缩放图像的目标宽度
        height - 缩放图像的目标高度
    • 方法详细信息

      • setHints

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

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

        Specified by:
        setHints接口 ImageConsumer
        重写:
        setHints在类 ImageFilter
        参数
        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调用中指定正确的提示,则将工作中继到我们的超类,该超类能够缩放像素,而不管传递提示如何。

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

        Specified by:
        setPixels接口 ImageConsumer
        重写:
        setPixelsReplicateScaleFilter
        参数
        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
        重写:
        setPixelsReplicateScaleFilter
        参数
        x - 要设置的像素区域左上角的X坐标
        y - 要设置的像素区域左上角的Y坐标
        w - 像素区域的宽度
        h - 像素区域的高度
        model - 指定的 ColorModel
        pixels - 像素数组
        off - 进入 pixels数组的偏移量
        scansize - pixels阵列中从一行像素到下一行像素的距离
        另请参见:
        ReplicateScaleFilter