Spec-Zone.ru › OpenJDK 27

Класс ICC_ProfileGray

java.lang.Object
java.awt.color.ICC_Profile
java.awt.color.ICC_ProfileGray
Все реализуемые интерфейсы:
Serializable
public final class ICC_ProfileGray extends ICC_Profile
Класс ICC_ProfileGray является подклассом класса ICC_Profile, представляющим профили, которые соответствуют следующим критериям: тип цветового пространства профиля — TYPE_GRAY, а профиль содержит теги grayTRCTag и mediaWhitePointTag. Методы getInstance класса ICC_Profile возвращают объект ICC_ProfileGray, если соблюдены приведённые выше условия. Примерами таких профилей являются монохромные профили ввода, монохромные профили дисплея и монохромные профили вывода.

Преимущество этого класса заключается в том, что он предоставляет таблицу преобразования, которую Java или нативные методы могут использовать напрямую для оптимизации преобразования цветов в некоторых случаях.

Для преобразования цветового пространства профиля устройства GRAY в пространство соединения профилей CIEXYZ компонент серого устройства преобразуется с помощью таблицы воспроизведения тонов (TRC). Результат рассматривается как ахроматическая компонента PCS.


                PCSY = grayTRC[deviceGray]

Обратное преобразование выполняется путём преобразования компонент Y пространства PCS в серый цвет устройства с помощью обратной функции grayTRC.
См. также:
  • Сериализованная форма

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

Поля, объявленные в классе ICC_Profile

CLASS_ABSTRACT, CLASS_COLORSPACECONVERSION, CLASS_DEVICELINK, CLASS_DISPLAY, CLASS_INPUT, CLASS_NAMEDCOLOR, CLASS_OUTPUT, icAbsoluteColorimetric, icCurveCount, icCurveData, icHdrAttributes, icHdrCmmId, icHdrColorSpace, icHdrCreator, icHdrDate, icHdrDeviceClass, icHdrFlags, icHdrIlluminant, icHdrMagic, icHdrManufacturer, icHdrModel, icHdrPcs, icHdrPlatform, icHdrProfileID, icHdrRenderingIntent, icHdrSize, icHdrVersion, icICCAbsoluteColorimetric, icMediaRelativeColorimetric, icPerceptual, icRelativeColorimetric, icSaturation, icSigAbstractClass, icSigAToB0Tag, icSigAToB1Tag, icSigAToB2Tag, icSigBlueColorantTag, icSigBlueMatrixColumnTag, icSigBlueTRCTag, icSigBToA0Tag, icSigBToA1Tag, icSigBToA2Tag, icSigCalibrationDateTimeTag, icSigCharTargetTag, icSigChromaticAdaptationTag, icSigChromaticityTag, icSigCmyData, icSigCmykData, icSigColorantOrderTag, icSigColorantTableTag, icSigColorSpaceClass, icSigCopyrightTag, icSigCrdInfoTag, icSigDeviceMfgDescTag, icSigDeviceModelDescTag, icSigDeviceSettingsTag, icSigDisplayClass, icSigGamutTag, icSigGrayData, icSigGrayTRCTag, icSigGreenColorantTag, icSigGreenMatrixColumnTag, icSigGreenTRCTag, icSigHead, icSigHlsData, icSigHsvData, icSigInputClass, icSigLabData, icSigLinkClass, icSigLuminanceTag, icSigLuvData, icSigMeasurementTag, icSigMediaBlackPointTag, icSigMediaWhitePointTag, icSigNamedColor2Tag, icSigNamedColorClass, icSigOutputClass, icSigOutputResponseTag, icSigPreview0Tag, icSigPreview1Tag, icSigPreview2Tag, icSigProfileDescriptionTag, icSigProfileSequenceDescTag, icSigPs2CRD0Tag, icSigPs2CRD1Tag, icSigPs2CRD2Tag, icSigPs2CRD3Tag, icSigPs2CSATag, icSigPs2RenderingIntentTag, icSigRedColorantTag, icSigRedMatrixColumnTag, icSigRedTRCTag, icSigRgbData, icSigScreeningDescTag, icSigScreeningTag, icSigSpace2CLR, icSigSpace3CLR, icSigSpace4CLR, icSigSpace5CLR, icSigSpace6CLR, icSigSpace7CLR, icSigSpace8CLR, icSigSpace9CLR, icSigSpaceACLR, icSigSpaceBCLR, icSigSpaceCCLR, icSigSpaceDCLR, icSigSpaceECLR, icSigSpaceFCLR, icSigTechnologyTag, icSigUcrBgTag, icSigViewingCondDescTag, icSigViewingConditionsTag, icSigXYZData, icSigYCbCrData, icSigYxyData, icTagReserved, icTagType, icXYZNumberX
Модификатор и тип Поле Описание
static final int CLASS_ABSTRACT
Класс профиля — абстрактный.
static final int CLASS_COLORSPACECONVERSION
Класс профиля — преобразование цветового пространства.
static final int CLASS_DEVICELINK
Класс профиля — связь устройств.
static final int CLASS_DISPLAY
Класс профиля — дисплей.
static final int CLASS_INPUT
Класс профиля — ввод.
static final int CLASS_NAMEDCOLOR
Класс профиля — именованный цвет.
static final int CLASS_OUTPUT
Класс профиля — вывод.
static final int icAbsoluteColorimetric
Режим цветопередачи профиля ICC: AbsoluteColorimetric.
static final int icCurveCount
Константа профиля ICC: количество элементов curveType.
static final int icCurveData
Константа профиля ICC: данные curveType.
static final int icHdrAttributes
Расположение в заголовке профиля ICC: атрибуты устройства.
static final int icHdrCmmId
Расположение в заголовке профиля ICC: CMM для этого профиля.
static final int icHdrColorSpace
Расположение в заголовке профиля ICC: цветовое пространство данных.
static final int icHdrCreator
Расположение в заголовке профиля ICC: создатель профиля.
static final int icHdrDate
Расположение в заголовке профиля ICC: дата создания профиля.
static final int icHdrDeviceClass
Расположение в заголовке профиля ICC: тип профиля.
static final int icHdrFlags
Расположение в заголовке профиля ICC: различные настройки битов.
static final int icHdrIlluminant
Расположение в заголовке профиля ICC: источник освещения профиля.
static final int icHdrMagic
Расположение в заголовке профиля ICC: icMagicNumber.
static final int icHdrManufacturer
Расположение в заголовке профиля ICC: производитель устройства.
static final int icHdrModel
Расположение в заголовке профиля ICC: номер модели устройства.
static final int icHdrPcs
Расположение в заголовке профиля ICC: PCS — только XYZ или Lab.
static final int icHdrPlatform
Расположение в заголовке профиля ICC: основная платформа.
static final int icHdrProfileID
Расположение в заголовке профиля ICC: идентификатор профиля.
static final int icHdrRenderingIntent
Расположение в заголовке профиля ICC: режим цветопередачи.
static final int icHdrSize
Расположение в заголовке профиля ICC: размер профиля в байтах.
static final int icHdrVersion
Расположение в заголовке профиля ICC: номер версии формата.
static final int icICCAbsoluteColorimetric
Режим цветопередачи профиля ICC: ICC-AbsoluteColorimetric.
static final int icMediaRelativeColorimetric
Режим цветопередачи профиля ICC: Media-RelativeColorimetric.
static final int icPerceptual
Режим цветопередачи профиля ICC: Perceptual.
static final int icRelativeColorimetric
Режим цветопередачи профиля ICC: RelativeColorimetric.
static final int icSaturation
Режим цветопередачи профиля ICC: Saturation.
static final int icSigAbstractClass
Сигнатура класса профиля ICC: 'abst'.
static final int icSigAToB0Tag
Сигнатура тега профиля ICC: 'A2B0'.
static final int icSigAToB1Tag
Сигнатура тега профиля ICC: 'A2B1'.
static final int icSigAToB2Tag
Сигнатура тега профиля ICC: 'A2B2'.
static final int icSigBlueColorantTag
Сигнатура тега профиля ICC: 'bXYZ'.
static final int icSigBlueMatrixColumnTag
Сигнатура тега профиля ICC: 'bXYZ'.
static final int icSigBlueTRCTag
Сигнатура тега профиля ICC: 'bTRC'.
static final int icSigBToA0Tag
Сигнатура тега профиля ICC: 'B2A0'.
static final int icSigBToA1Tag
Сигнатура тега профиля ICC: 'B2A1'.
static final int icSigBToA2Tag
Сигнатура тега профиля ICC: 'B2A2'.
static final int icSigCalibrationDateTimeTag
Сигнатура тега профиля ICC: 'calt'.
static final int icSigCharTargetTag
Сигнатура тега профиля ICC: 'targ'.
static final int icSigChromaticAdaptationTag
Сигнатура тега профиля ICC: 'chad'.
static final int icSigChromaticityTag
Сигнатура тега профиля ICC: 'chrm'.
static final int icSigCmyData
Сигнатура типа цветового пространства профиля ICC: 'CMY '.
static final int icSigCmykData
Сигнатура типа цветового пространства профиля ICC: 'CMYK'.
static final int icSigColorantOrderTag
Сигнатура тега профиля ICC: 'clro'.
static final int icSigColorantTableTag
Сигнатура тега профиля ICC: 'clrt'.
static final int icSigColorSpaceClass
Сигнатура класса профиля ICC: 'spac'.
static final int icSigCopyrightTag
Сигнатура тега профиля ICC: 'cprt'.
static final int icSigCrdInfoTag
Сигнатура тега профиля ICC: 'crdi'.
static final int icSigDeviceMfgDescTag
Сигнатура тега профиля ICC: 'dmnd'.
static final int icSigDeviceModelDescTag
Сигнатура тега профиля ICC: 'dmdd'.
static final int icSigDeviceSettingsTag
Сигнатура тега профиля ICC: 'devs'.
static final int icSigDisplayClass
Сигнатура класса профиля ICC: 'mntr'.
static final int icSigGamutTag
Сигнатура тега профиля ICC: 'gamt'.
static final int icSigGrayData
Сигнатура типа цветового пространства профиля ICC: 'GRAY'.
static final int icSigGrayTRCTag
Сигнатура тега профиля ICC: 'kTRC'.
static final int icSigGreenColorantTag
Сигнатура тега профиля ICC: 'gXYZ'.
static final int icSigGreenMatrixColumnTag
Сигнатура тега профиля ICC: 'gXYZ'.
static final int icSigGreenTRCTag
Сигнатура тега профиля ICC: 'gTRC'.
static final int icSigHead
Сигнатура тега профиля ICC: 'head' — специальная.
static final int icSigHlsData
Сигнатура типа цветового пространства профиля ICC: 'HLS'.
static final int icSigHsvData
Сигнатура типа цветового пространства профиля ICC: 'HSV'.
static final int icSigInputClass
Сигнатура класса профиля ICC: 'scnr'.
static final int icSigLabData
Сигнатура типа цветового пространства профиля ICC: 'Lab '.
static final int icSigLinkClass
Сигнатура класса профиля ICC: 'link'.
static final int icSigLuminanceTag
Сигнатура тега профиля ICC: 'lumi'.
static final int icSigLuvData
Сигнатура типа цветового пространства профиля ICC: 'Luv '.
static final int icSigMeasurementTag
Сигнатура тега профиля ICC: 'meas'.
static final int icSigMediaBlackPointTag
Сигнатура тега профиля ICC: 'bkpt'.
static final int icSigMediaWhitePointTag
Сигнатура тега профиля ICC: 'wtpt'.
static final int icSigNamedColor2Tag
Сигнатура тега профиля ICC: 'ncl2'.
static final int icSigNamedColorClass
Сигнатура класса профиля ICC: 'nmcl'.
static final int icSigOutputClass
Сигнатура класса профиля ICC: 'prtr'.
static final int icSigOutputResponseTag
Сигнатура тега профиля ICC: 'resp'.
static final int icSigPreview0Tag
Сигнатура тега профиля ICC: 'pre0'.
static final int icSigPreview1Tag
Сигнатура тега профиля ICC: 'pre1'.
static final int icSigPreview2Tag
Сигнатура тега профиля ICC: 'pre2'.
static final int icSigProfileDescriptionTag
Сигнатура тега профиля ICC: 'desc'.
static final int icSigProfileSequenceDescTag
Сигнатура тега профиля ICC: 'pseq'.
static final int icSigPs2CRD0Tag
Сигнатура тега профиля ICC: 'psd0'.
static final int icSigPs2CRD1Tag
Сигнатура тега профиля ICC: 'psd1'.
static final int icSigPs2CRD2Tag
Сигнатура тега профиля ICC: 'psd2'.
static final int icSigPs2CRD3Tag
Сигнатура тега профиля ICC: 'psd3'.
static final int icSigPs2CSATag
Сигнатура тега профиля ICC: 'ps2s'.
static final int icSigPs2RenderingIntentTag
Сигнатура тега профиля ICC: 'ps2i'.
static final int icSigRedColorantTag
Сигнатура тега профиля ICC: 'rXYZ'.
static final int icSigRedMatrixColumnTag
Сигнатура тега профиля ICC: 'rXYZ'.
static final int icSigRedTRCTag
Сигнатура тега профиля ICC: 'rTRC'.
static final int icSigRgbData
Сигнатура типа цветового пространства профиля ICC: 'RGB '.
static final int icSigScreeningDescTag
Сигнатура тега профиля ICC: 'scrd'.
static final int icSigScreeningTag
Сигнатура тега профиля ICC: 'scrn'.
static final int icSigSpace2CLR
Сигнатура типа цветового пространства профиля ICC: '2CLR'.
static final int icSigSpace3CLR
Сигнатура типа цветового пространства профиля ICC: '3CLR'.
static final int icSigSpace4CLR
Сигнатура типа цветового пространства профиля ICC: '4CLR'.
static final int icSigSpace5CLR
Сигнатура типа цветового пространства профиля ICC: '5CLR'.
static final int icSigSpace6CLR
Сигнатура типа цветового пространства профиля ICC: '6CLR'.
static final int icSigSpace7CLR
Сигнатура типа цветового пространства профиля ICC: '7CLR'.
static final int icSigSpace8CLR
Сигнатура типа цветового пространства профиля ICC: '8CLR'.
static final int icSigSpace9CLR
Сигнатура типа цветового пространства профиля ICC: '9CLR'.
static final int icSigSpaceACLR
Сигнатура типа цветового пространства профиля ICC: 'ACLR'.
static final int icSigSpaceBCLR
Сигнатура типа цветового пространства профиля ICC: 'BCLR'.
static final int icSigSpaceCCLR
Сигнатура типа цветового пространства профиля ICC: 'CCLR'.
static final int icSigSpaceDCLR
Сигнатура типа цветового пространства профиля ICC: 'DCLR'.
static final int icSigSpaceECLR
Сигнатура типа цветового пространства профиля ICC: 'ECLR'.
static final int icSigSpaceFCLR
Сигнатура типа цветового пространства профиля ICC: 'FCLR'.
static final int icSigTechnologyTag
Сигнатура тега профиля ICC: 'tech'.
static final int icSigUcrBgTag
Сигнатура тега профиля ICC: 'bfd '.
static final int icSigViewingCondDescTag
Сигнатура тега профиля ICC: 'vued'.
static final int icSigViewingConditionsTag
Сигнатура тега профиля ICC: 'view'.
static final int icSigXYZData
Сигнатура типа цветового пространства профиля ICC: 'XYZ '.
static final int icSigYCbCrData
Сигнатура типа цветового пространства профиля ICC: 'YCbr'.
static final int icSigYxyData
Сигнатура типа цветового пространства профиля ICC: 'Yxy '.
static final int icTagReserved
Константа профиля ICC: зарезервировано.
static final int icTagType
Константа профиля ICC: сигнатура типа тега.
static final int icXYZNumberX
Константа профиля ICC: X в XYZNumber.

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

Модификатор и тип Метод Описание
float getGamma()
Возвращает значение гаммы, представляющее кривую воспроизведения тонов (TRC).
float[] getMediaWhitePoint()
Возвращает массив float длиной 3, содержащий компоненты X, Y и Z тега mediaWhitePointTag в профиле ICC.
short[] getTRC()
Возвращает TRC в виде массива short.

Методы, объявленные в классе ICC_Profile

getColorSpaceType, getData, getData, getInstance, getInstance, getInstance, getInstance, getMajorVersion, getMinorVersion, getNumComponents, getPCSType, getProfileClass, readResolve, setData, write, write
Модификатор и тип Метод Описание
int getColorSpaceType()
Возвращает тип цветового пространства.
byte[] getData()
Возвращает массив byte, соответствующий данным этого ICC_Profile.
byte[] getData(int tagSignature)
Возвращает конкретный элемент помеченных данных профиля в виде массива byte.
static ICC_Profile getInstance(byte[] data)
Создаёт объект ICC_Profile, соответствующий данным в массиве byte.
static ICC_Profile getInstance(int cspace)
Создаёт ICC_Profile, соответствующий одному из определённых цветовых пространств класса ColorSpace (например, CS_sRGB).
static ICC_Profile getInstance(InputStream s)
Создаёт ICC_Profile, соответствующий данным в InputStream.
static ICC_Profile getInstance(String fileName)
Создаёт ICC_Profile, соответствующий данным в файле.
int getMajorVersion()
Возвращает старшую версию профиля.
int getMinorVersion()
Возвращает младшую версию профиля.
int getNumComponents()
Возвращает количество цветовых компонент во входном цветовом пространстве этого профиля.
int getPCSType()
Возвращает тип цветового пространства пространства соединения профилей (PCS).
int getProfileClass()
Возвращает класс профиля.
protected Object readResolve()
Заменяет десериализованные экземпляры экземплярами, зарегистрированными в CMM.
void setData(int tagSignature, byte[] tagData)
Задаёт конкретный элемент помеченных данных профиля из массива byte.
void write(OutputStream s)
Записывает этот ICC_Profile в OutputStream.
void write(String fileName)
Записывает этот ICC_Profile в файл.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация устарела и подлежит удалению в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

getMediaWhitePoint

public float[] getMediaWhitePoint()
Возвращает массив float длиной 3, содержащий компоненты X, Y и Z тега mediaWhitePointTag в профиле ICC.
Возвращает:
массив, содержащий компоненты тега mediaWhitePointTag в профиле ICC

getGamma

public float getGamma()
Возвращает значение гаммы, представляющее кривую воспроизведения тонов (TRC). Если кривая TRC в профиле представлена таблицей, а не одним значением гаммы, генерируется исключение. В этом случае получить саму таблицу можно с помощью getTRC(). При использовании значения гаммы компонента Y пространства PCS вычисляется следующим образом:

                          gamma
         PCSY = deviceGray

Возвращает:
значение гаммы типа float
Вызывает исключение:
ProfileDataException — если кривая TRC в профиле задана не одним значением гаммы

getTRC

public short[] getTRC()
Возвращает TRC в виде массива short. Если в профиле указана линейная TRC (gamma = 1.0) или простое значение гаммы, этот метод генерирует исключение; для получения значения гаммы следует использовать метод getGamma(). В противном случае возвращаемый здесь массив short представляет собой таблицу преобразования, в которой входное значение серого концептуально находится в диапазоне [0.0, 1.0]. Значение 0.0 соответствует индексу массива 0, а значение 1.0 — индексу массива length-1. Для получения выходных значений для входных значений, которые не соответствуют точно индексу массива, можно использовать интерполяцию. Выходные значения также линейно отображаются в диапазон [0.0, 1.0]. Значение 0.0 представлено значением массива 0x0000, а значение 1.0 — значением 0xFFFF; то есть фактически это беззнаковые значения short, хотя они возвращаются в массиве short.
Возвращает:
массив short, представляющий TRC
Вызывает исключение:
ProfileDataException — если в профиле TRC задана не в виде таблицы

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, включая концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее дочерних компаний в США и других странах.
Авторские права © 1993, 2026, Oracle и/или ее дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065, США.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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