Интерфейс ImageConsumer
- Все известные реализующие классы:
-
AreaAveragingScaleFilter,BufferedImageFilter,CropImageFilter,GrayFilter,ImageFilter,PixelGrabber,ReplicateScaleFilter,RGBImageFilter
public interface ImageConsumer
Интерфейс для объектов, выражающих интерес к данным изображения посредством интерфейсов ImageProducer. Когда потребитель добавляется к производителю изображения, производитель предоставляет все данные об изображении с использованием методов, определенных в этом интерфейсе.
- См. также:
ImageProducer
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static int | COMPLETESCANLINES | Пиксели будут передаваться (в кратных) полными строками сканирования за раз. |
static int | IMAGEABORTED | Процесс создания изображения был намеренно прерван. |
static int | IMAGEERROR | При создании изображения возникла ошибка. |
static int | RANDOMPIXELORDER | Пиксели будут передаваться в случайном порядке. |
static int | SINGLEFRAME | Изображение содержит одно статическое изображение. |
static int | SINGLEFRAMEDONE | Один кадр изображения завершен, но есть еще кадры, которые нужно передать. |
static int | SINGLEPASS | Пиксели будут передаваться за один проход. |
static int | STATICIMAGEDONE | Изображение завершено, и больше нет пикселей или кадров для передачи. |
static int | TOPDOWNLEFTRIGHT | Пиксели будут передаваться сверху вниз, слева направо. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | imageComplete(int status) | Метод imageComplete вызывается, когда ImageProducer завершает передачу всех пикселей исходного изображения, или когда завершен один кадр многокадровой анимации, или когда произошла ошибка при загрузке или создании изображения. |
void | setColorModel(ColorModel model) | Устанавливает объект ColorModel, используемый для большинства пикселей, сообщаемых с помощью вызовов метода setPixels. |
void | setDimensions(int width,
int height) | Размеры исходного изображения сообщаются с помощью вызова метода setDimensions. |
void | setHints(int hintflags) | Устанавливает подсказки, которые ImageConsumer использует для обработки пикселей, передаваемых ImageProducer. |
void | setPixels(int x,
int y,
int w,
int h,
ColorModel model,
byte[] pixels,
int off,
int scansize) | Передает пиксели изображения с помощью одного или нескольких вызовов этого метода. |
void | setPixels(int x,
int y,
int w,
int h,
ColorModel model,
int[] pixels,
int off,
int scansize) | Пиксели изображения передаются с помощью одного или нескольких вызовов метода setPixels. |
void | setProperties(Hashtable<?,?> props) | Устанавливает расширяемый список свойств, связанных с этим изображением. |
Поля
RANDOMPIXELORDER
static final int RANDOMPIXELORDER
Пиксели будут переданы в случайном порядке. Это сообщает ImageConsumer, что не следует использовать оптимизации, которые зависят от порядка доставки пикселей, что должно быть предположением по умолчанию в отсутствие вызова метода setHints.
- См. также:
-
setHints(int), Значения константных полей
TOPDOWNLEFTRIGHT
static final int TOPDOWNLEFTRIGHT
Пиксели будут переданы в порядке сверху вниз, слева направо.
- См. также:
-
setHints(int), Значения константных полей
COMPLETESCANLINES
static final int COMPLETESCANLINES
Пиксели будут переданы (кратными) целыми строками сканирования за раз.
- См. также:
-
setHints(int), Значения константных полей
SINGLEPASS
static final int SINGLEPASS
Пиксели будут переданы за один проход. Каждый пиксель появится только в одном вызове любого из методов setPixels. Примером формата изображения, который не соответствует этому критерию, является прогредсивное JPEG-изображение, которое определяет пиксели несколькими проходами, каждый из которых более детализирован, чем предыдущий.
- См. также:
-
setHints(int), Значения константных полей
SINGLEFRAME
static final int SINGLEFRAME
Изображение содержит одно статическое изображение. Пиксели будут определены в вызовах методов setPixels, а затем метод imageComplete будет вызван со флагом STATICIMAGEDONE после чего больше данных изображения не будет передано. Примером типа изображения, который не будет соответствовать этим критериям, является вывод видеопотока или представление 3D-рендеринга, манипулируемого пользователем. Окончание каждого кадра в этих типах изображений будет обозначено вызовом imageComplete со флагом SINGLEFRAMEDONE.
- См. также:
-
setHints(int),imageComplete(int), Значения константных полей
IMAGEERROR
static final int IMAGEERROR
При создании изображения произошла ошибка.
- См. также:
-
imageComplete(int), Значения константных полей
SINGLEFRAMEDONE
static final int SINGLEFRAMEDONE
Один кадр изображения завершен, но для передачи имеются дополнительные кадры.
- См. также:
-
imageComplete(int), Значения константных полей
STATICIMAGEDONE
static final int STATICIMAGEDONE
Изображение завершено, и больше не будут переданы пиксели или кадры.
- См. также:
-
imageComplete(int), Значения константных полей
IMAGEABORTED
static final int IMAGEABORTED
Процесс создания изображения был преднамеренно прерван.
- См. также:
-
imageComplete(int), Значения константных полей
Методы
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 - См. также:
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) хранится в массиве пикселей по индексу (n * scansize + m + off). Передаваемые с помощью этого метода пиксели хранятся как байты.
- Параметры:
-
x- координата X левого верхнего угла области пикселей, которые нужно установить -
y- координата Y левого верхнего угла области пикселей, которые нужно установить -
w- ширина области пикселей -
h- высота области пикселей -
model- указанныйColorModel -
pixels- массив пикселей -
off- смещение в массивеpixels -
scansize- расстояние от одной строки пикселей до следующей в массивеpixels - См. также:
ColorModel
setPixels
void setPixels(int x,
int y,
int w,
int h,
ColorModel model,
int[] pixels,
int off,
int scansize) Пиксели изображения передаются с помощью одного или нескольких вызовов метода setPixels. Каждый вызов указывает расположение и размер прямоугольника исходных пикселей, содержащихся в массиве пикселей. Указанный объект ColorModel должен использоваться для преобразования пикселей в соответствующие компоненты цвета и альфа-канала. Пиксель (m,n) хранится в массиве пикселей по индексу (n * scansize + m + off). Передаваемые с помощью этого метода пиксели хранятся как целые числа.
- Параметры:
-
x- координата X левого верхнего угла области пикселей, которые нужно установить -
y- координата Y левого верхнего угла области пикселей, которые нужно установить -
w- ширина области пикселей -
h- высота области пикселей -
model- указанныйColorModel -
pixels- массив пикселей -
off- смещение в массивеpixels -
scansize- расстояние от одной строки пикселей до следующей в массивеpixels - См. также:
ColorModel
imageComplete
void imageComplete(int status)
Метод imageComplete вызывается, когда ImageProducer завершает передачу всех пикселей, содержащихся в исходном изображении, или когда завершается один кадр многокадровой анимации, или когда при загрузке или создании изображения произошла ошибка. В этом случае ImageConsumer должен удалить себя из списка потребителей, зарегистрированных в ImageProducer, если только он не заинтересован в последующих кадрах.
- Параметры:
-
status- состояние загрузки изображения - См. также:
ImageProducer.removeConsumer(java.awt.image.ImageConsumer)
© 1993, 2020, 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/11/docs/api/java.desktop/java/awt/image/ImageConsumer.html