Spec-Zone.ru › OpenJDK 24

Класс BufferedImage

java.lang.Object
java.awt.Image
java.awt.image.BufferedImage
Все реализуемые интерфейсы:
RenderedImage, WritableRenderedImage, Transparency
public class BufferedImage extends Image implements WritableRenderedImage, Transparency
Подкласс BufferedImage описывает Image с доступным буфером данных изображения. BufferedImage состоит из ColorModel и Raster данных изображения. Количество и типы каналов в SampleModel Raster должны соответствовать количеству и типам, необходимым ColorModel для представления своих цветовых и альфа-компонентов. Все объекты BufferedImage имеют координаты верхнего левого угла (0, 0). Любой Raster, используемый для построения BufferedImage, должен, следовательно, иметь minX=0 и minY=0.

Этот класс опирается на методы извлечения и установки данных в Raster и методы характеристики цвета в ColorModel.

См. также:
  • ColorModel
  • Raster
  • WritableRaster

Краткое описание полей

Модификатор и тип Поле Описание
static final int TYPE_3BYTE_BGR
Представляет изображение с 8-битными RGB цветовыми компонентами, соответствующими цветовой модели BGR в стиле Windows, где цвета Синий, Зелёный и Красный хранятся в 3 байтах.
static final int TYPE_4BYTE_ABGR
Представляет изображение с 8-битными RGBA цветовыми компонентами, где цвета Синий, Зелёный и Красный хранятся в 3 байтах, а 1 байт — альфа-канал.
static final int TYPE_4BYTE_ABGR_PRE
Представляет изображение с 8-битными RGBA цветовыми компонентами, где цвета Синий, Зелёный и Красный хранятся в 3 байтах, а 1 байт — альфа-канал.
static final int TYPE_BYTE_BINARY
Представляет непрозрачное байтовое упакованное изображение с 1, 2 или 4 битами.
static final int TYPE_BYTE_GRAY
Представляет изображение в оттенках серого с 8-битными беззнаковыми байтами, не индексированное.
static final int TYPE_BYTE_INDEXED
Представляет индексированное байтовое изображение.
static final int TYPE_CUSTOM
Тип изображения не распознан, поэтому это должно быть настраиваемое изображение.
static final int TYPE_INT_ARGB
Представляет изображение с 8-битными RGBA цветовыми компонентами, упакованными в целые пиксели.
static final int TYPE_INT_ARGB_PRE
Представляет изображение с 8-битными RGBA цветовыми компонентами, упакованными в целые пиксели.
static final int TYPE_INT_BGR
Представляет изображение с 8-битными RGB цветовыми компонентами, соответствующими цветовой модели BGR в стиле Windows или Solaris, где цвета Синий, Зелёный и Красный упакованы в целые пиксели.
static final int TYPE_INT_RGB
Представляет изображение с 8-битными RGB цветовыми компонентами, упакованными в целые пиксели.
static final int TYPE_USHORT_555_RGB
Представляет изображение с 5-5-5 RGB цветовыми компонентами (5 бит для красного, 5 бит для зелёного, 5 бит для синего) без альфа-канала.
static final int TYPE_USHORT_565_RGB
Представляет изображение с 5-6-5 RGB цветовыми компонентами (5 бит для красного, 6 бит для зелёного, 5 бит для синего) без альфа-канала.
static final int TYPE_USHORT_GRAY
Представляет изображение в оттенках серого с 16-битными беззнаковыми числами, не индексированное.

Поля, объявленные в классе java.awt.Image

accelerationPriority, SCALE_AREA_AVERAGING, SCALE_DEFAULT, SCALE_FAST, SCALE_REPLICATE, SCALE_SMOOTH, UndefinedProperty

Поля, объявленные в интерфейсе java.awt.Transparency

BITMASK, OPAQUE, TRANSLUCENT

Краткое описание конструкторов

Конструктор Описание
BufferedImage(int width, int height, int imageType)
Создаёт BufferedImage одного из предопределённых типов изображений.
BufferedImage(int width, int height, int imageType, IndexColorModel cm)
Создаёт BufferedImage одного из предопределённых типов изображений: TYPE_BYTE_BINARY или TYPE_BYTE_INDEXED.
BufferedImage(ColorModel cm, WritableRaster raster, boolean isRasterPremultiplied, Hashtable<?,?> properties)
Создаёт новый BufferedImage со специфицированным ColorModel и Raster.

Краткое описание методов

Модификатор и тип Метод Описание
void addTileObserver(TileObserver to)
Добавляет наблюдателя за плиткой.
void coerceData(boolean isAlphaPremultiplied)
Принудительно согласует данные с состоянием, указанным в переменной isAlphaPremultiplied.
WritableRaster copyData(WritableRaster outRaster)
Вычисляет произвольную прямоугольную область BufferedImage и копирует её в указанную область WritableRaster.
Graphics2D createGraphics()
Создаёт Graphics2D, которое можно использовать для рисования в этом BufferedImage.
WritableRaster getAlphaRaster()
Возвращает WritableRaster, представляющий альфа-канал для BufferedImage объектов с ColorModel объектами, поддерживающими отдельный пространственный альфа-канал, такие как ComponentColorModel и DirectColorModel.
ColorModel getColorModel()
Возвращает ColorModel.
Raster getData()
Возвращает изображение как одну большую плитку.
Raster getData(Rectangle rect)
Вычисляет и возвращает произвольную область BufferedImage.
Graphics getGraphics()
Этот метод возвращает Graphics2D, но используется для обратной совместимости.
int getHeight()
Возвращает высоту BufferedImage.
int getHeight(ImageObserver observer)
Возвращает высоту BufferedImage.
int getMinTileX()
Возвращает минимальный индекс плитки в направлении x.
int getMinTileY()
Возвращает минимальный индекс плитки в направлении y.
int getMinX()
Возвращает минимальную координату x этого BufferedImage.
int getMinY()
Возвращает минимальную координату y этого BufferedImage.
int getNumXTiles()
Возвращает количество плиток в направлении x.
int getNumYTiles()
Возвращает количество плиток в направлении y.
Object getProperty(String name)
Возвращает свойство изображения по имени.
Object getProperty(String name, ImageObserver observer)
Возвращает свойство изображения по имени.
String[] getPropertyNames()
Возвращает массив имён, распознаваемых getProperty(String) или null, если имена свойств не распознаны.
WritableRaster getRaster()
Возвращает WritableRaster.
int getRGB(int x, int y)
Возвращает целочисленный пиксель в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB.
int[] getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)
Возвращает массив целочисленных пикселей в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB из части данных изображения.
SampleModel getSampleModel()
Возвращает SampleModel, связанное с этим BufferedImage.
ImageProducer getSource()
Возвращает объект, генерирующий пиксели для изображения.
Vector<RenderedImage> getSources()
Возвращает Vector объектов RenderedImage, которые являются непосредственными источниками, а не источниками этих непосредственных источников, данных изображения для этого BufferedImage.
BufferedImage getSubimage(int x, int y, int w, int h)
Возвращает подизображение, определённое заданной прямоугольной областью.
Raster getTile(int tileX, int tileY)
Возвращает плитку (tileX, tileY).
int getTileGridXOffset()
Возвращает смещение x сетки плиток относительно начала координат. Например, координата x расположения плитки (0, 0).
int getTileGridYOffset()
Возвращает смещение y сетки плиток относительно начала координат. Например, координата y расположения плитки (0, 0).
int getTileHeight()
Возвращает высоту плитки в пикселях.
int getTileWidth()
Возвращает ширину плитки в пикселях.
int getTransparency()
Возвращает прозрачность.
int getType()
Возвращает тип изображения.
int getWidth()
Возвращает ширину BufferedImage.
int getWidth(ImageObserver observer)
Возвращает ширину BufferedImage.
WritableRaster getWritableTile(int tileX, int tileY)
Выдаёт плитку для записи.
Point[] getWritableTileIndices()
Возвращает массив объектов Point, указывающий, какие плитки выделены для записи.
boolean hasTileWriters()
Возвращает, выделена ли какая-либо плитка для записи.
boolean isAlphaPremultiplied()
Возвращает, была ли альфа-прозрачность предварительно умножена.
boolean isTileWritable(int tileX, int tileY)
Возвращает, выделена ли в данный момент плитка для записи.
void releaseWritableTile(int tileX, int tileY)
Отменяет разрешение на запись в плитку.
void removeTileObserver(TileObserver to)
Удаляет наблюдателя за плиткой.
void setData(Raster r)
Задает прямоугольную область изображения содержимым указанного Raster r, который предполагается в той же системе координат, что и BufferedImage.
void setRGB(int x, int y, int rgb)
Устанавливает пиксель в этом BufferedImage в указанное значение RGB.
void setRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)
Устанавливает массив целочисленных пикселей в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB в часть данных изображения.
String toString()
Возвращает String представление этого объекта BufferedImage и его значений.

Методы, объявленные в классе java.awt.Image

flush, getAccelerationPriority, getCapabilities, getScaledInstance, setAccelerationPriority

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

TYPE_CUSTOM

public static final int TYPE_CUSTOM
Тип изображения не распознан, поэтому он должен быть пользовательским изображением. Этот тип используется только в качестве значения возврата для метода getType().
См. также:
  • Значения константных полей

TYPE_INT_RGB

public static final int TYPE_INT_RGB
Представляет изображение с 8-битными компонентами цвета RGB, упакованными в целочисленные пиксели. Изображение имеет DirectColorModel без альфа-компонента. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_INT_ARGB

public static final int TYPE_INT_ARGB
Представляет изображение с 8-битными компонентами цвета RGBA, упакованными в целочисленные пиксели. Изображение имеет DirectColorModel с альфа-каналом. Данные цвета в этом изображении считаются не умноженными на альфа-канал. При использовании этого типа в качестве аргумента imageType конструктора BufferedImage создаваемое изображение соответствует изображениям, созданным в JDK 1.1 и более ранних версиях.
См. также:
  • Значения константных полей

TYPE_INT_ARGB_PRE

public static final int TYPE_INT_ARGB_PRE
Представляет изображение с 8-битными компонентами цвета RGBA, упакованными в целочисленные пиксели. Изображение имеет DirectColorModel с альфа-каналом. Данные цвета в этом изображении считаются умноженными на альфа-канал.
См. также:
  • Значения константных полей

TYPE_INT_BGR

public static final int TYPE_INT_BGR
Представляет изображение с 8-битными компонентами цвета RGB, соответствующими цветовой модели BGR по стилю Windows или Solaris, с цветами Blue, Green и Red, упакованными в целочисленные пиксели. Альфа-канала нет. Изображение имеет DirectColorModel. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_3BYTE_BGR

public static final int TYPE_3BYTE_BGR
Представляет изображение с 8-битными компонентами цвета RGB, соответствующей цветовой модели BGR по стилю Windows, с цветами Blue, Green и Red, хранящимися в 3 байтах. Альфа-канала нет. Изображение имеет ComponentColorModel. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_4BYTE_ABGR

public static final int TYPE_4BYTE_ABGR
Представляет изображение с 8-битными компонентами цвета RGBA, где цвета Blue, Green и Red хранятся в 3 байтах, а 1 байт — альфа-канал. Изображение имеет ComponentColorModel с альфа-каналом. Данные цвета в этом изображении считаются не умноженными на альфа-канал. Данные байтов чередуются в одном массиве байтов в порядке A, B, G, R от младшего к старшему байту в каждом пикселе.
См. также:
  • Значения константных полей

TYPE_4BYTE_ABGR_PRE

public static final int TYPE_4BYTE_ABGR_PRE
Представляет изображение с 8-битными компонентами цвета RGBA, где цвета Blue, Green и Red хранятся в 3 байтах, а 1 байт — альфа-канал. Изображение имеет ComponentColorModel с альфа-каналом. Данные цвета в этом изображении считаются умноженными на альфа-канал. Данные байтов чередуются в одном массиве байтов в порядке A, B, G, R от младшего к старшему байту в каждом пикселе.
См. также:
  • Значения константных полей

TYPE_USHORT_565_RGB

public static final int TYPE_USHORT_565_RGB
Представляет изображение с 5-6-5 компонентами цвета RGB (5 бит красного, 6 бит зеленого, 5 бит синего) без альфа-канала. У этого изображения есть DirectColorModel. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_USHORT_555_RGB

public static final int TYPE_USHORT_555_RGB
Представляет изображение с 5-5-5 компонентами цвета RGB (5 бит красного, 5 бит зеленого, 5 бит синего) без альфа-канала. У этого изображения есть DirectColorModel. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_BYTE_GRAY

public static final int TYPE_BYTE_GRAY
Представляет изображение в оттенках серого с беззнаковыми байтами, не индексированное. У этого изображения есть ComponentColorModel с CS_GRAY ColorSpace. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_USHORT_GRAY

public static final int TYPE_USHORT_GRAY
Представляет изображение в оттенках серого с беззнаковыми короткими целыми числами (не индексированное). У этого изображения есть ComponentColorModel с CS_GRAY ColorSpace. При хранении данных с непрозрачным альфа-каналом в изображении этого типа данные цвета должны быть приведены к форме без предварительного умножения, а альфа-канал отброшен, как описано в документации AlphaComposite.
См. также:
  • Значения константных полей

TYPE_BYTE_BINARY

public static final int TYPE_BYTE_BINARY
Представляет непрозрачное изображение с байтовыми данными, 1, 2 или 4 бита на пиксель. У изображения нет альфа-канала, оно имеет IndexColorModel без альфа-канала. При использовании этого типа в качестве аргумента imageType конструктору BufferedImage, принимающему аргумент imageType, но не ColorModel, создается 1-битовое изображение с IndexColorModel двумя цветами в стандартной цветовой модели sRGB ColorSpace: {0, 0, 0} и {255, 255, 255}.

Изображения с 2 или 4 битами на пиксель могут быть созданы с помощью конструктора BufferedImage, принимающего аргумент ColorModel, передав ColorModel с соответствующим размером карты.

Изображения с 8 битами на пиксель должны использовать типы изображений TYPE_BYTE_INDEXED или TYPE_BYTE_GRAY в зависимости от их ColorModel.

При хранении цветовых данных в изображении этого типа определяется ближайший цвет в цветовой таблице IndexColorModel, и полученный индекс сохраняется. Может произойти приближение и потеря альфа- или цветовых компонентов, в зависимости от цветов в IndexColorModel цветовой таблице.

См. также:
  • Значения константных полей

TYPE_BYTE_INDEXED

public static final int TYPE_BYTE_INDEXED
Представляет индексированное байтовое изображение. Когда этот тип используется в качестве аргумента imageType конструктору BufferedImage, принимающему аргумент imageType, но не аргумент ColorModel, создается IndexColorModel с палитрой цветового куба 6/6/6 с 256 цветами, а остальные цвета от 216 до 255 заполнены значениями серого в стандартном цветовом пространстве sRGB.

При хранении цветовых данных в изображении этого типа ближайший цвет в цветовой карте определяется с помощью IndexColorModel, а полученный индекс сохраняется. В зависимости от цветов в цветовой карте IndexColorModel может произойти приближение и потеря альфа- или цветовых компонентов.

См. также:
  • Значения константных полей

Подробное описание конструкторов

BufferedImage

public BufferedImage(int width, int height, int imageType)
Конструирует BufferedImage одного из предопределённых типов изображений. Цветовое пространство изображения — стандартное sRGB.
Параметры:
width - ширина создаваемого изображения
height - высота создаваемого изображения
imageType - тип создаваемого изображения
См. также:
  • ColorSpace
  • TYPE_INT_RGB
  • TYPE_INT_ARGB
  • TYPE_INT_ARGB_PRE
  • TYPE_INT_BGR
  • TYPE_3BYTE_BGR
  • TYPE_4BYTE_ABGR
  • TYPE_4BYTE_ABGR_PRE
  • TYPE_BYTE_GRAY
  • TYPE_USHORT_GRAY
  • TYPE_BYTE_BINARY
  • TYPE_BYTE_INDEXED
  • TYPE_USHORT_565_RGB
  • TYPE_USHORT_555_RGB

BufferedImage

public BufferedImage(int width, int height, int imageType, IndexColorModel cm)
Конструирует BufferedImage одного из предопределённых типов изображений: TYPE_BYTE_BINARY или TYPE_BYTE_INDEXED.

Если тип изображения — TYPE_BYTE_BINARY, количество элементов в цветовой модели используется для определения того, должно ли изображение иметь 1, 2 или 4 бита на пиксель. Если цветовая модель имеет 1 или 2 элемента, изображение будет иметь 1 бит на пиксель. Если она имеет 3 или 4 элемента, изображение будет иметь 2 бита на пиксель. Если она имеет от 5 до 16 элементов, изображение будет иметь 4 бита на пиксель. В противном случае будет брошено исключение IllegalArgumentException.

Параметры:
width - ширина создаваемого изображения
height - высота создаваемого изображения
imageType - тип создаваемого изображения
cm - IndexColorModel создаваемого изображения
Исключения:
IllegalArgumentException - если imageType не TYPE_BYTE_BINARY или TYPE_BYTE_INDEXED, или если imageType — TYPE_BYTE_BINARY, а цветовая карта содержит более 16 элементов.
См. также:
  • TYPE_BYTE_BINARY
  • TYPE_BYTE_INDEXED

BufferedImage

public BufferedImage(ColorModel cm, WritableRaster raster, boolean isRasterPremultiplied, Hashtable<?,?> properties)
Конструирует новый BufferedImage со заданной ColorModel и Raster. Если количество и типы каналов в SampleModel Raster не совпадают с количеством и типами, необходимыми ColorModel для представления цветовых и альфа-компонентов, генерируется исключение RasterFormatException. Этот метод может умножать или делить цветовые Raster данные на альфа-канал, чтобы согласовать состояние alphaPremultiplied в ColorModel. Свойства этого BufferedImage можно установить, передав в качестве аргумента Hashtable пар String/Object.
Параметры:
cm - ColorModel нового изображения
raster - Raster данных изображения
isRasterPremultiplied - если true, данные в растре были предварительно умножены на альфа-канал.
properties - Hashtable пар String/Object.
Исключения:
RasterFormatException - если количество и типы каналов в SampleModel Raster не совпадают с количеством и типами, необходимыми ColorModel для представления цветовых и альфа-компонентов.
IllegalArgumentException - если raster несовместим с cm
См. также:
  • ColorModel
  • Raster
  • WritableRaster

Подробное описание методов

getType

public int getType()
Возвращает тип изображения. Если тип неизвестен, возвращает TYPE_CUSTOM.
Возвращает:
тип изображения этого BufferedImage.
См. также:
  • TYPE_INT_RGB
  • TYPE_INT_ARGB
  • TYPE_INT_ARGB_PRE
  • TYPE_INT_BGR
  • TYPE_3BYTE_BGR
  • TYPE_4BYTE_ABGR
  • TYPE_4BYTE_ABGR_PRE
  • TYPE_BYTE_GRAY
  • TYPE_BYTE_BINARY
  • TYPE_BYTE_INDEXED
  • TYPE_USHORT_GRAY
  • TYPE_USHORT_565_RGB
  • TYPE_USHORT_555_RGB
  • TYPE_CUSTOM

getColorModel

public ColorModel getColorModel()
Возвращает ColorModel.
Определено в:
getColorModel в интерфейсе RenderedImage
Возвращает:
ColorModel этого BufferedImage.

getRaster

public WritableRaster getRaster()
Возвращает WritableRaster.
Возвращает:
WritableRaster этого BufferedImage.

getAlphaRaster

public WritableRaster getAlphaRaster()
Возвращает WritableRaster, представляющий альфа-канал для BufferedImage объектов с ColorModel объектами, поддерживающими отдельный пространственный альфа-канал, например ComponentColorModel и DirectColorModel. Возвращает null, если с ColorModel в этом изображении не связан альфа-канал. Этот метод предполагает, что для всех ColorModel объектов, кроме IndexColorModel, если ColorModel поддерживает альфа-канал, существует отдельный альфа-канал, который хранится как последний канал данных изображения. Если изображение использует IndexColorModel, у которого альфа-канал есть в таблице поиска, этот метод возвращает null, так как нет пространственно раздельного альфа-канала. Этот метод создаёт новый WritableRaster, но использует тот же массив данных.
Возвращает:
WritableRaster или null, если у этого BufferedImage нет альфа-канала, связанного с его ColorModel.

getRGB

public int getRGB(int x, int y)
Возвращает целочисленный пиксель в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB. Преобразование цвета происходит, если эта стандартная модель не соответствует цветовой модели изображения ColorModel. При использовании этого метода есть только 8 бит точности для каждого цветового компонента в возвращаемых данных.

Может быть брошено исключение ArrayIndexOutOfBoundsException, если координаты вне границ. Однако явных проверок границ не гарантируется.

Параметры:
x - координата X пикселя, для получения пикселя в стандартной цветовой модели RGB и стандартном цветовом пространстве sRGB
y - координата Y пикселя, для получения пикселя в стандартной цветовой модели RGB и стандартном цветовом пространстве sRGB
Возвращает:
целочисленный пиксель в стандартной цветовой модели RGB и стандартном цветовом пространстве sRGB.
См. также:
  • setRGB(int, int, int)
  • setRGB(int, int, int, int, int[], int, int)

getRGB

public int[] getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)
Возвращает массив целочисленных пикселей в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB, из части данных изображения. Преобразование цвета происходит, если стандартная модель не соответствует изображению ColorModel. При использовании этого метода в возвращаемых данных точность каждого цветового компонента составляет только 8 бит. С заданными координатами (x, y) в изображении пиксель ARGB можно получить следующим образом:
    pixel   = rgbArray[offset + (y-startY)*scansize + (x-startX)]; 

Может быть выброшено исключение ArrayIndexOutOfBoundsException, если область находится вне границ. Однако явная проверка границ не гарантируется.

Parameters:
startX - начальная координата X
startY - начальная координата Y
w - ширина области
h - высота области
rgbArray - если не null, rgb пиксели записываются сюда
offset - смещение в rgbArray
scansize - шаг сканирования для rgbArray
Returns:
массив пикселей RGB.
See Also:
  • setRGB(int, int, int)
  • setRGB(int, int, int, int, int[], int, int)

setRGB

public void setRGB(int x, int y, int rgb)
Устанавливает пиксель в этом BufferedImage в указанное значение RGB. Предполагается, что пиксель находится в стандартной цветовой модели RGB, TYPE_INT_ARGB и стандартном цветовом пространстве sRGB. Для изображений с IndexColorModel выбирается индекс с ближайшим цветом.

Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.

Parameters:
x - координата X пикселя для установки
y - координата Y пикселя для установки
rgb - значение RGB
See Also:
  • getRGB(int, int)
  • getRGB(int, int, int, int, int[], int, int)

setRGB

public void setRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)
Устанавливает массив целочисленных пикселей в стандартной цветовой модели RGB (TYPE_INT_ARGB) и стандартном цветовом пространстве sRGB в части данных изображения. Преобразование цвета происходит, если стандартная модель не соответствует изображению ColorModel. При использовании этого метода в возвращаемых данных точность каждого цветового компонента составляет только 8 бит. С заданными координатами (x, y) в этом изображении пиксель ARGB можно получить следующим образом:
    pixel   = rgbArray[offset + (y-startY)*scansize + (x-startX)];
 
ПРЕДУПРЕЖДЕНИЕ: Деантиалаяция не выполняется.

Может быть выброшено исключение ArrayIndexOutOfBoundsException, если область находится вне границ. Однако явная проверка границ не гарантируется.

Parameters:
startX - начальная координата X
startY - начальная координата Y
w - ширина области
h - высота области
rgbArray - rgb пиксели
offset - смещение в rgbArray
scansize - шаг сканирования для rgbArray
See Also:
  • getRGB(int, int)
  • getRGB(int, int, int, int, int[], int, int)

getWidth

public int getWidth()
Возвращает ширину BufferedImage.
Specified by:
getWidth в интерфейсе RenderedImage
Returns:
ширина этого BufferedImage

getHeight

public int getHeight()
Возвращает высоту BufferedImage.
Specified by:
getHeight в интерфейсе RenderedImage
Returns:
высота этого BufferedImage

getWidth

public int getWidth(ImageObserver observer)
Возвращает ширину BufferedImage.
Specified by:
getWidth в классе Image
Parameters:
observer - игнорируется
Returns:
ширина этого BufferedImage
See Also:
  • Image.getHeight(java.awt.image.ImageObserver)
  • ImageObserver

getHeight

public int getHeight(ImageObserver observer)
Возвращает высоту BufferedImage.
Specified by:
getHeight в классе Image
Parameters:
observer - игнорируется
Returns:
высота этого BufferedImage
See Also:
  • Image.getWidth(java.awt.image.ImageObserver)
  • ImageObserver

getSource

public ImageProducer getSource()
Возвращает объект, который генерирует пиксели для изображения.
Specified by:
getSource в классе Image
Returns:
the ImageProducer используемый для генерации пикселей для этого изображения.
See Also:
  • ImageProducer

getProperty

public Object getProperty(String name, ImageObserver observer)
Возвращает свойство изображения по имени. Отдельные имена свойств определяются различными форматами изображений. Если свойство не определено для конкретного изображения, этот метод возвращает поле UndefinedProperty. Если свойства этого изображения еще неизвестны, то этот метод возвращает null, и объект ImageObserver уведомляется позже. Имя свойства "comment" должно использоваться для хранения необязательного комментария, который может быть представлен пользователю в качестве описания изображения, его источника или его автора.
Specified by:
getProperty в классе Image
Parameters:
name - имя свойства
observer - the ImageObserver, который получает уведомление о информации об изображении
Returns:
an Object, который является свойством, на которое ссылается указанное name, или null, если свойства этого изображения еще неизвестны.
Throws:
NullPointerException - если имя свойства null.
See Also:
  • ImageObserver
  • Image.UndefinedProperty

getProperty

public Object getProperty(String name)
Возвращает свойство изображения по имени.
Specified by:
getProperty в интерфейсе RenderedImage
Parameters:
name - имя свойства
Returns:
an Object, который является свойством, на которое ссылается указанное name.
Throws:
NullPointerException - если имя свойства null.
See Also:
  • Image.UndefinedProperty

getGraphics

public Graphics getGraphics()
Этот метод возвращает Graphics2D, но он предназначен для совместимости со старыми версиями. createGraphics удобнее, так как он объявлен для возвращения Graphics2D.
Specified by:
getGraphics в классе Image
Returns:
a Graphics2D, который может быть использован для рисования на этом изображении.
See Also:
  • Graphics
  • Component.createImage(int, int)

createGraphics

public Graphics2D createGraphics()
Создаёт Graphics2D, который может быть использован для рисования на этом BufferedImage.
Returns:
a Graphics2D, used for drawing into this image.

getSubimage

public BufferedImage getSubimage(int x, int y, int w, int h)
Возвращает фрагмент изображения, определенный заданной прямоугольной областью. Возвращённый BufferedImage использует тот же массив данных, что и исходное изображение.
Параметры:
x - координата X левого верхнего угла заданной прямоугольной области
y - координата Y левого верхнего угла заданной прямоугольной области
w - ширина заданной прямоугольной области
h - высота заданной прямоугольной области
Возвращает:
фрагмент BufferedImage, являющийся подмножеством этого BufferedImage.
Исключения:
RasterFormatException - если указанная область не содержится в этом BufferedImage.

isAlphaPremultiplied

public boolean isAlphaPremultiplied()
Возвращает, умножена ли альфа-компонента на цвет. Возвращает false, если альфа-компонента отсутствует.
Возвращает:
true, если альфа-компонента умножена на цвет; false в противном случае.

coerceData

public void coerceData(boolean isAlphaPremultiplied)
Принудительно приводит данные к состоянию, указанному в переменной isAlphaPremultiplied. Может умножить или разделить данные растра цвета на альфа-канал или ничего не делать, если данные находятся в правильном состоянии.
Параметры:
isAlphaPremultiplied - true, если альфа-компонента умножена на цвет; false в противном случае.

toString

public String toString()
Возвращает строковое представление этого объекта BufferedImage и его значений.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого объекта BufferedImage.

getSources

public Vector<RenderedImage> getSources()
Возвращает Vector объектов RenderedImage, являющихся непосредственными источниками, а не источниками этих непосредственных источников, данных изображения для этого объекта BufferedImage. Этот метод возвращает null, если объект BufferedImage не содержит информации о своих непосредственных источниках. Возвращает пустой Vector, если у BufferedImage нет непосредственных источников.
Определено в:
getSources в интерфейсе RenderedImage
Возвращает:
Vector, содержащий непосредственные источники данных изображения объекта BufferedImage, или null, если у этого объекта BufferedImage нет информации о непосредственных источниках, или пустой Vector, если у этого объекта BufferedImage нет непосредственных источников.

getPropertyNames

public String[] getPropertyNames()
Возвращает массив имён, распознаваемых методом getProperty(String), или null, если имена свойств не распознаны.
Определено в:
getPropertyNames в интерфейсе RenderedImage
Возвращает:
массив String, содержащий все имена свойств, распознаваемые объектом getProperty(String); или null, если имена свойств не распознаны.

getMinX

public int getMinX()
Возвращает минимальную координату x этого BufferedImage. Всегда возвращает ноль.
Определено в:
getMinX в интерфейсе RenderedImage
Возвращает:
минимальную координату x этого BufferedImage.

getMinY

public int getMinY()
Возвращает минимальную координату y этого BufferedImage. Всегда возвращает ноль.
Определено в:
getMinY в интерфейсе RenderedImage
Возвращает:
минимальную координату y этого BufferedImage.

getSampleModel

public SampleModel getSampleModel()
Возвращает SampleModel, связанный с этим объектом BufferedImage.
Определено в:
getSampleModel в интерфейсе RenderedImage
Возвращает:
SampleModel этого объекта BufferedImage.

getNumXTiles

public int getNumXTiles()
Возвращает количество тайлов по горизонтали. Всегда возвращает единицу.
Определено в:
getNumXTiles в интерфейсе RenderedImage
Возвращает:
количество тайлов по горизонтали.

getNumYTiles

public int getNumYTiles()
Возвращает количество тайлов по вертикали. Всегда возвращает единицу.
Определено в:
getNumYTiles в интерфейсе RenderedImage
Возвращает:
количество тайлов по вертикали.

getMinTileX

public int getMinTileX()
Возвращает минимальный индекс тайла по горизонтали. Всегда возвращает ноль.
Определено в:
getMinTileX в интерфейсе RenderedImage
Возвращает:
минимальный индекс тайла по горизонтали.

getMinTileY

public int getMinTileY()
Возвращает минимальный индекс тайла по вертикали. Всегда возвращает ноль.
Определено в:
getMinTileY в интерфейсе RenderedImage
Возвращает:
минимальный индекс тайла по вертикали.

getTileWidth

public int getTileWidth()
Возвращает ширину тайла в пикселях.
Определено в:
getTileWidth в интерфейсе RenderedImage
Возвращает:
ширину тайла в пикселях.

getTileHeight

public int getTileHeight()
Возвращает высоту тайла в пикселях.
Определено в:
getTileHeight в интерфейсе RenderedImage
Возвращает:
высоту тайла в пикселях.

getTileGridXOffset

public int getTileGridXOffset()
Возвращает смещение тайловой сетки по оси x относительно начала координат. Например, координата x расположения тайла (0, 0). Всегда возвращает ноль.
Определено в:
getTileGridXOffset в интерфейсе RenderedImage
Возвращает:
смещение тайловой сетки по оси x.

getTileGridYOffset

public int getTileGridYOffset()
Возвращает смещение тайловой сетки по оси y относительно начала координат. Например, координата y расположения тайла (0, 0). Всегда возвращает ноль.
Определено в:
getTileGridYOffset в интерфейсе RenderedImage
Возвращает:
смещение тайловой сетки по оси y.

getTile

public Raster getTile(int tileX, int tileY)
Возвращает тайл (tileX, tileY). Обратите внимание, что tileX и tileY являются индексами в массиве тайлов, а не координатами пикселей. Возвращаемый Raster является динамическим, то есть обновляется при изменении изображения.
Определено в:
getTile в интерфейсе RenderedImage
Параметры:
tileX - индекс тайла по оси x в массиве тайлов
tileY - индекс тайла по оси y в массиве тайлов
Возвращает:
объект Raster, представляющий тайл, определяемый аргументами tileX и tileY.
Исключения:
ArrayIndexOutOfBoundsException - если tileX и tileY не равны 0

getData

public Raster getData()
Возвращает изображение как один большой тайл. Возвращаемый Raster является копией данных изображения и не обновляется при изменении изображения.
Определено в:
getData в интерфейсе RenderedImage
Возвращает:
Raster, являющийся копией данных изображения.
См. также:
  • setData(Raster)

getData

public Raster getData(Rectangle rect)
Вычисляет и возвращает произвольную область BufferedImage. Возвращаемое Raster представляет собой копию данных изображения и не обновляется при изменении изображения.
Определено в:
getData в интерфейсе RenderedImage
Параметры:
rect - область BufferedImage, которую нужно вернуть.
Возвращает:
Raster, являющийся копией данных изображения указанной области BufferedImage
См. также:
  • setData(Raster)

copyData

public WritableRaster copyData(WritableRaster outRaster)
Вычисляет произвольную прямоугольную область BufferedImage и копирует её в указанный WritableRaster. Область для вычисления определяется границами указанного WritableRaster. Указанный WritableRaster должен иметь SampleModel, совместимый с этим изображением. Если outRaster равен null, создаётся соответствующий WritableRaster.
Определено в:
copyData в интерфейсе RenderedImage
Параметры:
outRaster - WritableRaster для хранения возвращаемой части изображения или null
Возвращает:
ссылку на предоставленный или созданный WritableRaster.

setData

public void setData(Raster r)
Устанавливает прямоугольную область изображения в соответствии с содержимым указанного Raster r, которое предполагается в той же системе координат, что и BufferedImage. Операция обрезается до границ BufferedImage.
Определено в:
setData в интерфейсе WritableRenderedImage
Параметры:
r - указанный Raster
См. также:
  • getData()
  • getData(Rectangle)

addTileObserver

public void addTileObserver(TileObserver to)
Добавляет наблюдателя за тайлами. Если наблюдатель уже присутствует, он получает несколько уведомлений.

Этот метод игнорирует свои параметры и ничего не делает, так как BufferedImage всегда проверяется на запись и не может быть сделан только для чтения, поэтому событий для отправки никогда не бывает.

Определено в:
addTileObserver в интерфейсе WritableRenderedImage
Параметры:
to - указанный TileObserver

removeTileObserver

public void removeTileObserver(TileObserver to)
Удаляет наблюдателя за тайлами. Если наблюдатель не был зарегистрирован, ничего не происходит. Если наблюдатель был зарегистрирован для нескольких уведомлений, он теперь зарегистрирован для на одно уведомление меньше.

Этот метод игнорирует заданного наблюдателя, так как addTileObserver(TileObserver) ничего не добавляет.

Определено в:
removeTileObserver в интерфейсе WritableRenderedImage
Параметры:
to - указанный TileObserver.

isTileWritable

public boolean isTileWritable(int tileX, int tileY)
Возвращает, открыт ли тайл для записи в данный момент. Единственный тайл в BufferedImage находится в (0,0) и всегда открыт для записи, поэтому вызов этого метода с (0,0) всегда вернёт true, а любая другая координата приведёт к сбросу исключения.
Определено в:
isTileWritable в интерфейсе WritableRenderedImage
Параметры:
tileX - индекс x тайла.
tileY - индекс y тайла.
Возвращает:
true, если тайл, указанный указанными индексами, открыт для записи; false в противном случае.
Исключение:
IllegalArgumentException - если либо tileX, либо tileY не равно 0

getWritableTileIndices

public Point[] getWritableTileIndices()
Возвращает массив объектов Point, указывающих, какие тайлы открыты для записи. Возвращает null, если ни один тайл не открыт.

Поскольку BufferedImage состоит из одного тайла, и этот тайл всегда открыт для записи, этот метод возвращает массив из одной точки. Кроме того, смещение должно быть согласованным с getMinTileX() и getMinTileY(), которые всегда (0,0) в BufferedImage. Это всегда будут координаты единственной возвращаемой Point.

Определено в:
getWritableTileIndices в интерфейсе WritableRenderedImage
Возвращает:
массив Point, указывающий тайлы, которые открыты для записи, или null, если ни один тайл не открыт для записи.

hasTileWriters

public boolean hasTileWriters()
Возвращает, открыт ли какой-либо тайл для записи. Семантически эквивалентно
 (getWritableTileIndices() != null).
 
Определено в:
hasTileWriters в интерфейсе WritableRenderedImage
Возвращает:
true, если какой-либо тайл открыт для записи; false в противном случае.

getWritableTile

public WritableRaster getWritableTile(int tileX, int tileY)
Открывает тайл для записи. Все зарегистрированные TileObservers уведомляются, когда тайл переходит из состояния без писателей в состояние с одним писателем.

Этот метод безусловно возвращает единственный тайл без проверки переданных значений. Никакие слушатели не уведомляются, так как возвращаемый тайл всегда открыт для записи.

Определено в:
getWritableTile в интерфейсе WritableRenderedImage
Параметры:
tileX - индекс x тайла
tileY - индекс y тайла
Возвращает:
WritableRaster, представляющий собой тайл, указанный заданными индексами, который нужно открыть для записи.

releaseWritableTile

public void releaseWritableTile(int tileX, int tileY)
Освобождает разрешение на запись в тайл. Если вызывающая сторона продолжает запись в тайл, результаты будут неопределёнными. Вызовы этого метода должны появляться только в парных вызовах с вызовами getWritableTile(int, int). Любые другие вызовы приводят к неопределённым результатам. Все зарегистрированные TileObservers уведомляются, когда тайл переходит из состояния с одним писателем в состояние без писателей.

Этот метод немедленно возвращается без проверки переданных значений. Никакие слушатели не уведомляются, так как один тайл всегда открыт для записи.

Определено в:
releaseWritableTile в интерфейсе WritableRenderedImage
Параметры:
tileX - индекс x тайла
tileY - индекс y тайла

getTransparency

public int getTransparency()
Возвращает прозрачность. Возвращает OPAQUE, BITMASK или TRANSLUCENT.
Определено в:
getTransparency в интерфейсе Transparency
Возвращает:
прозрачность этого BufferedImage.
C момента:
1.5
См. также:
  • Transparency.OPAQUE
  • Transparency.BITMASK
  • Transparency.TRANSLUCENT

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/image/BufferedImage.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API