- 所有父级接口:
EventListener
ImageReader
实现使用的接口,用于通知调用者其图像和缩略图读取像素更新的方法。
- 参见:
-
方法总结
修饰符和类型方法描述void
imageUpdate
(ImageReader source, BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands) 报告图像的给定区域已更新。void
passComplete
(ImageReader source, BufferedImage theImage) 报告当前读取操作已完成渐进传递。void
passStarted
(ImageReader source, BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands) 报告当前读取操作即将开始渐进传递。void
thumbnailPassComplete
(ImageReader source, BufferedImage theThumbnail) 报告当前缩略图读取操作已完成渐进传递。void
thumbnailPassStarted
(ImageReader source, BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands) 报告当前缩略图读取操作即将开始渐进传递。void
thumbnailUpdate
(ImageReader source, BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands) 报告缩略图的给定区域已更新。
-
方法详情
-
passStarted
void passStarted(ImageReader source, BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands) 报告当前读取操作即将开始渐进传递。支持渐进式编码的格式的读者在读取渐进式编码的图像时应该使用它来通知客户端何时完成每个通道。minX
、minY
、width
和height
参数指示将由通道更新的区域估计值。如果 pass 是交错的,也就是说,它只更新选定的行或列,periodX
和periodY
参数将指示二次采样的程度。可能受影响的频段集由bands
的值指示。- 参数:
source
- 调用此方法的ImageReader
对象。theImage
- 正在更新的BufferedImage
。pass
- 即将开始的 pass 编号,从 0 开始。minPass
- 将被解码的第一遍的索引。maxPass
- 将被解码的最后一遍的索引。minX
- 最左侧更新像素列的 X 坐标。minY
- 最上面更新的像素行的 Y 坐标。periodX
- 更新像素之间的水平间距;值为 1 表示没有间隙。periodY
- 更新像素之间的垂直间距;值为 1 表示没有间隙。bands
- 一个int
数组,指示可以更新的设置波段。
-
imageUpdate
void imageUpdate(ImageReader source, BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands) 报告图像的给定区域已更新。应用程序可能会选择重新显示指定区域,例如,为了提供渐进式显示效果,或执行其他增量处理。请注意,不同的图像格式阅读器可能会以各种不同的顺序生成解码像素。许多阅读器会以简单的从上到下、从左到右的顺序生成像素,但其他阅读器可能会使用多次隔行扫描、平铺等。更新顺序甚至可能因网络速度而异, 例如。调用此方法并不能保证所有指定的像素实际上都已更新,只能保证在指定像素的某个子区域内发生了某些活动。
特定的
ImageReader
实现可以选择提供更新的频率。每次更新指定图像的给定区域自上次更新以来已更新。区域由其空间边界框(minX
、minY
、width
和height
)描述; X 和 Y 子采样因子(periodX
和periodY
);和一组更新的波段 (bands
)。例如,更新:minX = 10 minY = 20 width = 3 height = 4 periodX = 2 periodY = 3 bands = { 1, 3 }
表示更新了以下像素的波段 1 和 3:(10, 20) (12, 20) (14, 20) (10, 23) (12, 23) (14, 23) (10, 26) (12, 26) (14, 26) (10, 29) (12, 29) (14, 29)
- 参数:
source
- 调用此方法的ImageReader
对象。theImage
- 正在更新的BufferedImage
。minX
- 最左侧更新像素列的 X 坐标。minY
- 最上面更新的像素行的 Y 坐标。width
- 水平更新的像素数。height
- 垂直更新的像素数。periodX
- 更新像素之间的水平间距;值为 1 表示没有间隙。periodY
- 更新像素之间的垂直间距;值为 1 表示没有间隙。bands
- 一个int
数组,指示正在更新哪些波段。
-
passComplete
报告当前读取操作已完成渐进传递。支持渐进式编码的格式的读者在读取渐进式编码的图像时应该使用它来通知客户端何时完成每个通道。- 参数:
source
- 调用此方法的ImageReader
对象。theImage
- 正在更新的BufferedImage
。- 参见:
-
thumbnailPassStarted
void thumbnailPassStarted(ImageReader source, BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands) 报告当前缩略图读取操作即将开始渐进传递。支持渐进式编码的格式的读者在读取渐进式编码的缩略图图像时应该使用它来通知客户端何时完成每个通道。- 参数:
source
- 调用此方法的ImageReader
对象。theThumbnail
- 正在更新的BufferedImage
缩略图。pass
- 即将开始的 pass 编号,从 0 开始。minPass
- 将被解码的第一遍的索引。maxPass
- 将被解码的最后一遍的索引。minX
- 最左侧更新像素列的 X 坐标。minY
- 最上面更新的像素行的 Y 坐标。periodX
- 更新像素之间的水平间距;值为 1 表示没有间隙。periodY
- 更新像素之间的垂直间距;值为 1 表示没有间隙。bands
- 一个int
数组,指示可以更新的设置波段。- 参见:
-
thumbnailUpdate
void thumbnailUpdate(ImageReader source, BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands) 报告缩略图的给定区域已更新。应用程序可能会选择重新显示指定区域,例如,为了提供渐进式显示效果,或执行其他增量处理。- 参数:
source
- 调用此方法的ImageReader
对象。theThumbnail
- 正在更新的BufferedImage
缩略图。minX
- 最左侧更新像素列的 X 坐标。minY
- 最上面更新的像素行的 Y 坐标。width
- 水平更新的像素数。height
- 垂直更新的像素数。periodX
- 更新像素之间的水平间距;值为 1 表示没有间隙。periodY
- 更新像素之间的垂直间距;值为 1 表示没有间隙。bands
- 一个int
数组,指示正在更新哪些波段。- 参见:
-
thumbnailPassComplete
报告当前缩略图读取操作已完成渐进传递。支持渐进式编码的格式的读者在读取渐进式编码的缩略图图像时应该使用它来通知客户端何时完成每个通道。- 参数:
source
- 调用此方法的ImageReader
对象。theThumbnail
- 正在更新的BufferedImage
缩略图。- 参见:
-