Spec-Zone.ru › OpenJDK 21

Класс ImageTypeSpecifier

java.lang.Object
javax.imageio.ImageTypeSpecifier
public class ImageTypeSpecifier extends Object
Класс, позволяющий удобно задать формат изображения (в частности, его SampleModel и ColorModel).

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

Модификатор и тип Поле Описание
protected ColorModel colorModel
Используемый в качестве прототипа ColorModel.
protected SampleModel sampleModel
Используемый в качестве прототипа SampleModel.

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

Конструктор Описание
ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
Конструирует ImageTypeSpecifier напрямую из ColorModel и SampleModel.
ImageTypeSpecifier(RenderedImage image)
Конструирует ImageTypeSpecifier из RenderedImage.

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

Модификатор и тип Метод Описание
static ImageTypeSpecifier createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
Возвращает спецификатор формата изображения полосами, который будет использовать ComponentColorModel и BandedSampleModel для хранения каждого канала в отдельном массиве.
BufferedImage createBufferedImage(int width, int height)
Создаёт BufferedImage заданной ширины и высоты в соответствии со спецификацией, заключённой в этом объекте.
static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
Возвращает ImageTypeSpecifier, который кодирует один из стандартных типов BufferedImage (кроме TYPE_CUSTOM).
static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
Возвращает ImageTypeSpecifier, который кодирует структуру RenderedImage (которая может быть BufferedImage).
static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned)
Возвращает спецификатор формата изображения серого цвета, который будет упаковывать пиксели заданной разрядности в элементы массива указанного типа данных.
static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
Возвращает спецификатор формата изображения серого цвета с альфа-каналом, который будет упаковывать пиксели заданной разрядности в элементы массива указанного типа данных.
static ImageTypeSpecifier createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
Возвращает спецификатор формата изображения с индексированной цветовой палитрой, который будет упаковывать индексы цветов заданной разрядности в элементы массива указанного типа данных.
static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
Возвращает спецификатор для интерлинованного формата изображения, который будет использовать ComponentColorModel и PixelInterleavedSampleModel для хранения каждого компонента пикселя в отдельном байте, коротком или целом числе.
static ImageTypeSpecifier createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
Возвращает спецификатор для упакованного формата изображения, который будет использовать DirectColorModel и упакованное SampleModel для хранения каждого пикселя, упакованного в один байт, короткое или целое число.
boolean equals(Object o)
Возвращает true, если заданный Object является ImageTypeSpecifier и имеет SampleModel и ColorModel, равные соответствующим значениям этого объекта.
int getBitsPerBand(int band)
Возвращает количество бит, используемых для представления выборок заданного канала.
int getBufferedImageType()
Возвращает целое число, содержащее одно из перечисленных значений констант, описывающих форматы изображений из BufferedImage.
ColorModel getColorModel()
Возвращает ColorModel, заданный этим объектом.
int getNumBands()
Возвращает количество полос, заданное этим объектом.
int getNumComponents()
Возвращает количество цветовых компонентов, заданных этим объектом.
SampleModel getSampleModel()
Возвращает SampleModel, основанный на настройках, заключённых в этом объекте.
SampleModel getSampleModel(int width, int height)
Возвращает SampleModel, основанный на настройках, заключённых в этом объекте.
int hashCode()
Возвращает хэш-код для этого ImageTypeSpecifier.

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

clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait

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

colorModel

protected ColorModel colorModel
Используемая в качестве прототипа ColorModel.

sampleModel

protected SampleModel sampleModel
Используемая в качестве прототипа SampleModel.

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

ImageTypeSpecifier

public ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
Создаёт ImageTypeSpecifier напрямую из ColorModel и SampleModel. Ответственность за совместимость параметров лежит на вызывающей стороне.
Параметры:
colorModel - ColorModel.
sampleModel - SampleModel.
Исключения:
IllegalArgumentException - если любой из параметров null.
IllegalArgumentException - если sampleModel не совместим с colorModel.

ImageTypeSpecifier

public ImageTypeSpecifier(RenderedImage image)
Создаёт ImageTypeSpecifier из RenderedImage.
Если используется BufferedImage, для получения более точного результата следует использовать один из методов-фабрик createFromRenderedImage или createFromBufferedImageType.
Параметры:
image - RenderedImage.
Исключения:
IllegalArgumentException - если аргумент null.

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

createPacked

public static ImageTypeSpecifier createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
Возвращает спецификатор для упакованного формата изображения, который будет использовать DirectColorModel и упакованное SampleModel для хранения каждого пикселя, упакованного в один байт, короткий или целое число.
Параметры:
colorSpace - требуемый ColorSpace.
redMask - непрерывный массив, указывающий положение красного канала.
greenMask - непрерывный массив, указывающий положение зеленого канала.
blueMask - непрерывный массив, указывающий положение синего канала.
alphaMask - непрерывный массив, указывающий положение альфа-канала.
transferType - требуемый SampleModel тип передачи.
isAlphaPremultiplied - true если цветовые каналы будут предварительно умножены на альфа-канал.
Возвращает:
ImageTypeSpecifier с требуемыми характеристиками.
Исключения:
IllegalArgumentException - если colorSpace null.
IllegalArgumentException - если colorSpace не является TYPE_RGB.
IllegalArgumentException - если ни один из масок не имеет по крайней мере 1 бита.
IllegalArgumentException - если transferType не равно одному из значений DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.

createInterleaved

public static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
Возвращает спецификатор для интерливированного формата изображения, который будет использовать ComponentColorModel и PixelInterleavedSampleModel для хранения каждого компонента пикселя в отдельном байте, коротком или целом числе.
Параметры:
colorSpace - требуемый ColorSpace.
bandOffsets - массив ints, указывающий смещения для каждого канала.
dataType - требуемый тип данных, как один из перечислений из класса DataBuffer.
hasAlpha - true если требуется альфа-канал.
isAlphaPremultiplied - true если цветовые каналы будут предварительно умножены на альфа-канал.
Возвращает:
ImageTypeSpecifier с желаемыми характеристиками.
Исключения:
IllegalArgumentException - если colorSpace null.
IllegalArgumentException - если bandOffsets null.
IllegalArgumentException - если dataType не равно одному из допустимых констант DataBuffer.TYPE_*.
IllegalArgumentException - если bandOffsets.length не равно числу компонент цветового пространства плюс 1, если hasAlpha true.

createBanded

public static ImageTypeSpecifier createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
Возвращает спецификатор для формата изображения с полосами, который будет использовать ComponentColorModel и BandedSampleModel для хранения каждого канала в отдельном массиве.
Параметры:
colorSpace - желаемое ColorSpace.
bankIndices - массив ints, указывающий банк, в котором будет храниться каждый канал.
bandOffsets - массив ints, указывающий начальное смещение каждого канала в его банке.
dataType - желаемый тип данных, как одно из перечислений из класса DataBuffer.
hasAlpha - true если требуется альфа-канал.
isAlphaPremultiplied - true если цветовые каналы будут предварительно умножены на альфа-канал.
Возвращает:
ImageTypeSpecifier с желаемыми характеристиками.
Исключения:
IllegalArgumentException - если colorSpace null.
IllegalArgumentException - если bankIndices null.
IllegalArgumentException - если bandOffsets null.
IllegalArgumentException - если длины bankIndices и bandOffsets различаются.
IllegalArgumentException - если bandOffsets.length не равно числу компонент цветового пространства, плюс 1, если hasAlpha true.
IllegalArgumentException - если dataType не равно одному из допустимых констант DataBuffer.TYPE_*.

createGrayscale

public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned)
Возвращает спецификатор для формата изображения в оттенках серого, который будет упаковывать пиксели заданной глубины в элементы массива заданного типа данных.
Параметры:
bits - количество битов на значение серого (1, 2, 4, 8 или 16).
dataType - желаемый тип данных, как одно из перечислений из класса DataBuffer.
isSigned - true если отрицательные значения должны быть представлены.
Возвращает:
ImageTypeSpecifier с желаемыми характеристиками.
Исключения:
IllegalArgumentException - если bits не равно одному из 1, 2, 4, 8 или 16.
IllegalArgumentException - если dataType не равно одному из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_SHORT, или DataBuffer.TYPE_USHORT.
IllegalArgumentException - если bits больше, чем размер бита данного dataType.

createGrayscale

public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
Возвращает спецификатор для формата изображения в оттенках серого с альфа-каналом, который будет упаковывать пиксели заданной глубины в элементы массива заданного типа данных.
Параметры:
bits - количество битов на значение серого (1, 2, 4, 8 или 16).
dataType - желаемый тип данных, как одно из перечислений из класса DataBuffer.
isSigned - true если отрицательные значения должны быть представлены.
isAlphaPremultiplied - true если канал яркости будет предварительно умножен на альфа-канал.
Возвращает:
ImageTypeSpecifier с желаемыми характеристиками.
Исключения:
IllegalArgumentException - если bits не равно одному из 1, 2, 4, 8 или 16.
IllegalArgumentException - если dataType не равно одному из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_SHORT, или DataBuffer.TYPE_USHORT.
IllegalArgumentException - если bits больше, чем размер бита данного dataType.

createIndexed

public static ImageTypeSpecifier createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
Возвращает спецификатор для формата индексированного цветного изображения, который будет упаковывать значения индекса заданной разрядности в элементы массива указанного типа данных.
Parameters:
redLUT - массив byte содержащий значения красного цвета для каждого индекса.
greenLUT - массив byte содержащий значения зеленого цвета для каждого индекса.
blueLUT - массив byte содержащий значения синего цвета для каждого индекса.
alphaLUT - массив byte содержащий значения альфа-канала для каждого индекса, или null для создания полностью непрозрачной таблицы.
bits - количество бит в каждом индексе.
dataType - желаемый тип выходных данных, как одна из перечислений из класса DataBuffer.
Returns:
объект ImageTypeSpecifier с желаемыми характеристиками.
Throws:
IllegalArgumentException - если redLUT имеет значение null.
IllegalArgumentException - если greenLUT имеет значение null.
IllegalArgumentException - если blueLUT имеет значение null.
IllegalArgumentException - если bits не равно 1, 2, 4, 8 или 16.
IllegalArgumentException - если параметры таблицы, не являющиеся null, не имеют длину ровно 1 << bits.
IllegalArgumentException - если dataType не является одним из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT.
IllegalArgumentException - если bits больше, чем размер в битах заданного dataType.

createFromBufferedImageType

public static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
Возвращает объект ImageTypeSpecifier, кодирующий один из стандартных типов BufferedImage (кроме TYPE_CUSTOM).
Parameters:
bufferedImageType - целое число, представляющее один из стандартных типов BufferedImage.
Returns:
объект ImageTypeSpecifier с нужными характеристиками.
Throws:
IllegalArgumentException - если bufferedImageType не является одним из стандартных типов или равно TYPE_CUSTOM.
See Also:
  • BufferedImage
  • BufferedImage.TYPE_INT_RGB
  • BufferedImage.TYPE_INT_ARGB
  • BufferedImage.TYPE_INT_ARGB_PRE
  • BufferedImage.TYPE_INT_BGR
  • BufferedImage.TYPE_3BYTE_BGR
  • BufferedImage.TYPE_4BYTE_ABGR
  • BufferedImage.TYPE_4BYTE_ABGR_PRE
  • BufferedImage.TYPE_USHORT_565_RGB
  • BufferedImage.TYPE_USHORT_555_RGB
  • BufferedImage.TYPE_BYTE_GRAY
  • BufferedImage.TYPE_USHORT_GRAY
  • BufferedImage.TYPE_BYTE_BINARY
  • BufferedImage.TYPE_BYTE_INDEXED

createFromRenderedImage

public static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
Возвращает объект ImageTypeSpecifier, кодирующий макет RenderedImage (который может быть BufferedImage).
Parameters:
image - объект RenderedImage.
Returns:
объект ImageTypeSpecifier с нужными характеристиками.
Throws:
IllegalArgumentException - если image имеет значение null.

getBufferedImageType

public int getBufferedImageType()
Возвращает целое число, содержащее одно из перечисленных значений констант, описывающих форматы изображений из BufferedImage.
Returns:
целое число, представляющее тип BufferedImage.
See Also:
  • BufferedImage
  • BufferedImage.TYPE_CUSTOM
  • BufferedImage.TYPE_INT_RGB
  • BufferedImage.TYPE_INT_ARGB
  • BufferedImage.TYPE_INT_ARGB_PRE
  • BufferedImage.TYPE_INT_BGR
  • BufferedImage.TYPE_3BYTE_BGR
  • BufferedImage.TYPE_4BYTE_ABGR
  • BufferedImage.TYPE_4BYTE_ABGR_PRE
  • BufferedImage.TYPE_USHORT_565_RGB
  • BufferedImage.TYPE_USHORT_555_RGB
  • BufferedImage.TYPE_BYTE_GRAY
  • BufferedImage.TYPE_USHORT_GRAY
  • BufferedImage.TYPE_BYTE_BINARY
  • BufferedImage.TYPE_BYTE_INDEXED

getNumComponents

public int getNumComponents()
Возвращает количество цветовых компонентов, указанных в этом объекте. Это то же значение, что и возвращается ColorModel.getNumComponents.
Returns:
количество компонентов в изображении.

getNumBands

public int getNumBands()
Возвращает количество полос, указанных в этом объекте. Это то же значение, что и возвращается SampleModel.getNumBands.
Returns:
количество полос в изображении.

getBitsPerBand

public int getBitsPerBand(int band)
Возвращает количество бит, используемых для представления образцов заданной полосы.
Parameters:
band - индекс полосы, подлежащей запросу, как целое число.
Returns:
целое число, обозначающее количество бит.
Throws:
IllegalArgumentException - если band отрицательно или больше максимального индекса полосы.

getSampleModel

public SampleModel getSampleModel()
Возвращает SampleModel, основанный на настройках, заключённых в этом объекте. Ширина и высота SampleModel будут установлены в произвольные значения.
Returns:
объект SampleModel с произвольными размерами.

getSampleModel

public SampleModel getSampleModel(int width, int height)
Возвращает SampleModel, основанный на настройках, заключённых в этом объекте. Ширина и высота SampleModel будут установлены в указанные значения.
Parameters:
width - желаемая ширина возвращаемого SampleModel.
height - желаемая высота возвращаемого SampleModel.
Returns:
объект SampleModel с заданными размерами.
Throws:
IllegalArgumentException - если width или height отрицательны или равны нулю.
IllegalArgumentException - если произведение width и height больше, чем Integer.MAX_VALUE

getColorModel

public ColorModel getColorModel()
Возвращает ColorModel указанный в этом объекте.
Returns:
объект ColorModel.

createBufferedImage

public BufferedImage createBufferedImage(int width, int height)
Создаёт объект BufferedImage с заданной шириной и высотой в соответствии со спецификацией, заключённой в этом объекте.
Parameters:
width - желаемая ширина возвращаемого BufferedImage.
height - желаемая высота возвращаемого BufferedImage.
Returns:
новый объект BufferedImage
Throws:
IllegalArgumentException - если width или height отрицательны или равны нулю.
IllegalArgumentException - если произведение width и height больше, чем Integer.MAX_VALUE, или если количество элементов массива, необходимых для хранения изображения, превышает Integer.MAX_VALUE.

equals

public boolean equals(Object o)
Возвращает true если заданный объект Object является объектом ImageTypeSpecifier и имеет SampleModel и ColorModel, равные соответствующим значениям в этом объекте.
Overrides:
equals в классе Object
Parameters:
o - объект Object для сравнения на равенство.
Returns:
true если данный объект является эквивалентным объектом ImageTypeSpecifier.
See Also:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Возвращает код хэша для этого ImageTypeSpecifier.
Переопределяет:
hashCode в классе Object
Возвращает:
код хэша для этого ImageTypeSpecifier
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

© 1993, 2023, 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/21/docs/api/java.desktop/javax/imageio/ImageTypeSpecifier.html

Spec-Zone.ru

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