Интерфейс ImageConsumer
- Все известные реализующие классы:
AreaAveragingScaleFilter, BufferedImageFilter, CropImageFilter, GrayFilter, ImageFilter, PixelGrabber, ReplicateScaleFilter, RGBImageFilter
public interface ImageConsumer
Интерфейс для объектов, выражающих интерес к данным изображения через интерфейсы ImageProducer. Когда потребитель добавляется к производителю изображения, производитель передает все данные об изображении с помощью вызовов методов, определенных в этом интерфейсе.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
COMPLETESCANLINES |
Пиксели будут передаваться за один раз в виде полных строк развертки (или кратного им числа). |
static final int |
IMAGEABORTED |
Создание изображения было намеренно прервано. |
static final int |
IMAGEERROR |
При создании изображения произошла ошибка. |
static final int |
RANDOMPIXELORDER |
Пиксели будут передаваться в случайном порядке. |
static final int |
SINGLEFRAME |
Изображение содержит один статический кадр. |
static final int |
SINGLEFRAMEDONE |
Один кадр изображения завершен, но будут переданы и другие кадры. |
static final int |
SINGLEPASS |
Пиксели будут переданы за один проход. |
static final int |
STATICIMAGEDONE |
Изображение завершено, и больше не будет передано ни пикселей, ни кадров. |
static final int |
TOPDOWNLEFTRIGHT |
Пиксели будут передаваться сверху вниз, слева направо. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
imageComplete |
Метод imageComplete вызывается, когда ImageProducer завершает передачу всех пикселей исходного изображения, когда завершается один кадр много кадровой анимации или когда возникает ошибка при загрузке или создании изображения. |
void |
setColorModel |
Задает объект ColorModel, используемый для большинства пикселей, передаваемых при вызовах метода setPixels. |
void |
setDimensions |
Размеры исходного изображения сообщаются при вызове метода setDimensions. |
void |
setHints |
Задает подсказки, которые ImageConsumer использует для обработки пикселей, передаваемых ImageProducer. |
void |
setPixels |
Передает пиксели изображения одним или несколькими вызовами этого метода. |
void |
setPixels |
Пиксели изображения передаются одним или несколькими вызовами метода setPixels. |
void |
setProperties |
Задает расширяемый список свойств, связанных с этим изображением. |
Подробное описание полей
RANDOMPIXELORDER
static final int RANDOMPIXELORDER
Пиксели будут передаваться в случайном порядке. Это указывает ImageConsumer не использовать оптимизации, зависящие от порядка передачи пикселей; по умолчанию следует исходить из того, что порядок произвольный, если метод setHints не был вызван.
- См. также:
TOPDOWNLEFTRIGHT
static final int TOPDOWNLEFTRIGHT
Пиксели будут передаваться сверху вниз, слева направо.
- См. также:
COMPLETESCANLINES
static final int COMPLETESCANLINES
Пиксели будут передаваться за один раз в виде полных строк развертки (или кратного им числа).
- См. также:
SINGLEPASS
static final int SINGLEPASS
Пиксели будут переданы за один проход. Каждый пиксель появится только в одном вызове любого из методов setPixels. Пример формата изображения, не отвечающего этому критерию, — прогрессивное изображение JPEG, в котором пиксели определяются в нескольких проходах, каждый из которых дает более точное представление, чем предыдущий.
- См. также:
SINGLEFRAME
static final int SINGLEFRAME
Изображение содержит один статический кадр. Пиксели будут определены в вызовах методов setPixels, после чего будет вызван метод imageComplete с флагом STATICIMAGEDONE, и дальнейшие данные изображения передаваться не будут. Примером типа изображения, не отвечающего этим критериям, может служить видеопоток или представление трехмерной визуализации, которой управляет пользователь. Конец каждого кадра в таких типах изображений обозначается вызовом imageComplete с флагом SINGLEFRAMEDONE.
- См. также:
IMAGEERROR
static final int IMAGEERROR
При создании изображения произошла ошибка.
- См. также:
SINGLEFRAMEDONE
static final int SINGLEFRAMEDONE
Один кадр изображения завершен, но будут переданы и другие кадры.
- См. также:
STATICIMAGEDONE
static final int STATICIMAGEDONE
Изображение завершено, и больше не будет передано ни пикселей, ни кадров.
- См. также:
IMAGEABORTED
static final int IMAGEABORTED
Создание изображения было намеренно прервано.
- См. также:
Подробное описание методов
setDimensions
void setDimensions(int width, int height)
Размеры исходного изображения сообщаются при вызове метода setDimensions.
- Параметры:
-
width— ширина исходного изображения -
height— высота исходного изображения
setProperties
void setProperties(Hashtable<?,?> props)
Задает расширяемый список свойств, связанных с этим изображением.
- Параметры:
-
props— список свойств, связанных с этим изображением
setColorModel
void setColorModel(ColorModel model)
Задает объект ColorModel, используемый для большинства пикселей, передаваемых при вызовах метода setPixels. Обратите внимание, что каждый набор пикселей, передаваемый с помощью setPixels, содержит собственный объект ColorModel, поэтому нельзя предполагать, что при передаче значений пикселей будет использоваться только эта модель. Типичный случай использования нескольких объектов ColorModel — фильтрованное изображение: для каждого фильтруемого набора пикселей фильтр определяет, можно ли передать пиксели без изменений, используя исходный ColorModel, или их следует изменить (отфильтровать) и передать с помощью ColorModel, более удобного для процесса фильтрации.
- Параметры:
-
model— заданныйColorModel - См. также:
setHints
void setHints(int hintflags)
Задает подсказки, которые ImageConsumer использует для обработки пикселей, передаваемых ImageProducer. ImageProducer может передавать пиксели в любом порядке, однако ImageConsumer может масштабировать или преобразовывать пиксели в целевую ColorModel эффективнее или с более высоким качеством, если заранее знает, как будут передаваться пиксели. Метод setHints следует вызвать до любых вызовов методов setPixels, передав битовую маску подсказок о порядке передачи пикселей. Если ImageProducer не соблюдает указания, соответствующие заданной подсказке, результаты не определены.
- Параметры:
-
hintflags— набор подсказок, которые ImageConsumer использует для обработки пикселей
setPixels
void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
Передает пиксели изображения одним или несколькими вызовами этого метода. Каждый вызов задает расположение и размер прямоугольной области исходных пикселей, содержащихся в массиве пикселей. Указанный объект ColorModel следует использовать для преобразования пикселей в соответствующие компоненты цвета и альфа-канала. Пиксель (m,n) хранится в массиве pixels по индексу (n * scansize + m + off). Пиксели, передаваемые этим методом, хранятся в виде байтов.
- Параметры:
-
x— координата X верхнего левого угла области задаваемых пикселей -
y— координата Y верхнего левого угла области задаваемых пикселей -
w— ширина области пикселей -
h— высота области пикселей -
model— заданнаяColorModel -
pixels— массив пикселей -
off— смещение в массивеpixels -
scansize— расстояние между строками пикселей в массивеpixels - См. также:
setPixels
void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
Пиксели изображения передаются одним или несколькими вызовами метода setPixels. Каждый вызов задает расположение и размер прямоугольной области исходных пикселей, содержащихся в массиве пикселей. Указанный объект ColorModel следует использовать для преобразования пикселей в соответствующие компоненты цвета и альфа-канала. Пиксель (m,n) хранится в массиве pixels по индексу (n * scansize + m + off). Пиксели, передаваемые этим методом, хранятся в виде значений типа int. Пиксели, передаваемые этим методом, хранятся в виде значений типа int.
- Параметры:
-
x— координата X верхнего левого угла области задаваемых пикселей -
y— координата Y верхнего левого угла области задаваемых пикселей -
w— ширина области пикселей -
h— высота области пикселей -
model— заданнаяColorModel -
pixels— массив пикселей -
off— смещение в массивеpixels -
scansize— расстояние между строками пикселей в массивеpixels - См. также:
imageComplete
void imageComplete(int status)
Метод imageComplete вызывается, когда ImageProducer завершает передачу всех пикселей исходного изображения, когда завершается один кадр много кадровой анимации или когда возникает ошибка при загрузке или создании изображения. В этот момент ImageConsumer должен удалить себя из списка потребителей, зарегистрированных в ImageProducer, если только его не интересуют последующие кадры.
- Параметры:
-
status— состояние загрузки изображения - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/image/ImageConsumer.html