public interface IIOReadUpdateListener extends EventListener
ImageReader
实现来通知呼叫者他们的图像和像素更新的缩略图读取方法的接口。
Modifier and Type | Method and Description |
---|---|
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)
报告缩略图的给定区域已更新。
|
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
参数。 如果通行隔行扫描,即仅更新所选行或列,则periodX
和periodY
参数将指示periodY
采样的程度。 可能受影响的一组频带由bands的值bands
。
source
- 调用此方法的
ImageReader
对象。
theImage
- 正在更新的
BufferedImage
。
pass
- 即将开始的通行证号码,以0开头。
minPass
- 将被解码的第一遍的索引。
maxPass
- 将被解码的最后一次通过的索引。
minX
- 最左边更新的像素列的X坐标。
minY
- 最上面更新的像素行的Y坐标。
periodX
- 更新像素之间的水平间距;
值1表示没有间隙。
periodY
- 更新像素之间的垂直间距;
值1表示没有间隙。
bands
-的阵列
int
以及指示所述可更新所述一组频带。
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
-
height
更新像素的数量。
periodX
- 更新像素之间的水平间距;
值1表示没有间隙。
periodY
- 更新像素之间的垂直间距;
值1表示没有间隙。
bands
- 指示正在更新哪些频带的
int
的数组。
void passComplete(ImageReader source, BufferedImage theImage)
source
- 调用此方法的
ImageReader
对象。
theImage
- 正在更新的
BufferedImage
。
ImageReadParam.setSourceProgressivePasses(int, int)
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
- 即将从0开始的通行证号码。
minPass
- 将被解码的第一遍的索引。
maxPass
- 将被解码的最后一次通过的索引。
minX
- 最左边更新的像素列的X坐标。
minY
- 最上面更新的像素行的Y坐标。
periodX
- 更新像素之间的水平间距;
值1表示没有间隙。
periodY
- 更新像素之间的垂直间距;
值1表示没有间隙。
bands
-的阵列
int
以及指示所述可更新所述一组频带。
passStarted(javax.imageio.ImageReader, java.awt.image.BufferedImage, int, int, int, int, int, int, int, int[])
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
-
height
更新像素的数量。
periodX
- 更新像素之间的水平间距;
值1表示没有间隙。
periodY
- 更新像素之间的垂直间距;
值1表示没有间隙。
bands
- 指示正在更新哪些频带的
int
的数组。
imageUpdate(javax.imageio.ImageReader, java.awt.image.BufferedImage, int, int, int, int, int, int, int[])
void thumbnailPassComplete(ImageReader source, BufferedImage theThumbnail)
source
- 调用此方法的
ImageReader
对象。
theThumbnail
- 正在更新的
BufferedImage
缩略图。
passComplete(javax.imageio.ImageReader, java.awt.image.BufferedImage)