Класс TIFFTag

public class TIFFTag
extends Object

Класс, определяющий понятие тега TIFF. Тег TIFF — это ключ, который может появляться в каталоге файлов изображения (IFD). В IFD для каждого тега есть какие-то данные, которые могут состоять из нуля или более значений заданного типа данных. Сочетание тега и значения известно как запись IFD или поле TIFF.

Фактические значения тегов, используемые в корневом IFD стандартного («базового») потока tiff, определены в классе BaselineTIFFTagSet.

Since:
9
См. также:
BaselineTIFFTagSet, TIFFField, TIFFTagSet

Поля

Модификатор и тип Поле Описание
static int MAX_DATATYPE

Наибольшая числовая константа, представляющая тип данных TIFF.

static int MIN_DATATYPE

Наименьшая числовая константа, представляющая тип данных TIFF.

static int TIFF_ASCII

Флаг для null-терминированных ASCII-строк.

static int TIFF_BYTE

Флаг для 8-битовых беззнаковых целых чисел.

static int TIFF_DOUBLE

Флаг для 64-битовых IEEE-двойных чисел.

static int TIFF_FLOAT

Флаг для 32-битовых IEEE-чисел с плавающей точкой.

static int TIFF_IFD_POINTER

Флаг для указателя IFD, определенного в техническом примечании 1 к дополнению 1 к спецификации TIFF.

static int TIFF_LONG

Флаг для 32-битовых беззнаковых целых чисел.

static int TIFF_RATIONAL

Флаг для пар 32-битовых беззнаковых целых чисел.

static int TIFF_SBYTE

Флаг для 8-битовых знаковых целых чисел.

static int TIFF_SHORT

Флаг для 16-битовых беззнаковых целых чисел.

static int TIFF_SLONG

Флаг для 32-битовых знаковых целых чисел.

static int TIFF_SRATIONAL

Флаг для пар 32-битовых знаковых целых чисел.

static int TIFF_SSHORT

Флаг для 16-битовых знаковых целых чисел.

static int TIFF_UNDEFINED

Флаг для 8-битовых неинтерпретированных байтов.

static String UNKNOWN_TAG_NAME

Название, назначенное тегу с неизвестным номером тега.

Конструкторы

Конструктор Описание
TIFFTag​(String name, int number, int dataTypes)

Создает TIFFTag с заданным именем, номером тега и набором допустимых типов данных.

TIFFTag​(String name, int number, int dataTypes, int count)

Создает TIFFTag с заданным именем, номером тега, набором допустимых типов данных и количеством значений.

TIFFTag​(String name, int number, TIFFTagSet tagSet)

Создает TIFFTag с заданным именем, номером тега и TIFFTagSet, к которому он относится.

Методы

Модификатор и тип Метод Описание
protected void addValueName​(int value, String name)

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

int getCount()

Возвращает количество значений этого тега.

int getDataTypes()

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

String getName()

Возвращает имя тега, как оно будет отображаться в метаданных изображения.

int[] getNamedValues()

Возвращает массив значений, для которых определены мнемонические имена.

int getNumber()

Возвращает целое число, используемое для представления тега.

static int getSizeOfType​(int dataType)

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

TIFFTagSet getTagSet()

Возвращает TIFFTagSet, частью которого является этот тег.

String getValueName​(int value)

Возвращает мнемоническое имя, связанное с конкретным значением, которое могут принимать данные этого тега, или null , если имя отсутствует.

boolean hasValueNames()

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

boolean isDataTypeOK​(int dataType)

Возвращает true , если заданный тип данных может использоваться для данных, связанных с этим тегом.

boolean isIFDPointer()

Возвращает true, если этот тег используется для указания на структуру IFD, содержащую дополнительные теги.

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

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

Поля

TIFF_BYTE

public static final int TIFF_BYTE

Флаг для 8-битных беззнаковых целых чисел.

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

TIFF_ASCII

public static final int TIFF_ASCII

Флаг для null-терминированных строковых значений ASCII.

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

TIFF_SHORT

public static final int TIFF_SHORT

Флаг для 16-битных беззнаковых целых чисел.

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

TIFF_LONG

public static final int TIFF_LONG

Флаг для 32-битных беззнаковых целых чисел.

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

TIFF_RATIONAL

public static final int TIFF_RATIONAL

Флаг для пар 32-битных беззнаковых целых чисел.

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

TIFF_SBYTE

public static final int TIFF_SBYTE

Флаг для 8-битных знаковых целых чисел.

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

TIFF_UNDEFINED

public static final int TIFF_UNDEFINED

Флаг для 8-битных байтов без интерпретации.

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

TIFF_SSHORT

public static final int TIFF_SSHORT

Флаг для 16-битных знаковых целых чисел.

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

TIFF_SLONG

public static final int TIFF_SLONG

Флаг для 32-битных знаковых целых чисел.

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

TIFF_SRATIONAL

public static final int TIFF_SRATIONAL

Флаг для пар 32-битных знаковых целых чисел.

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

TIFF_FLOAT

public static final int TIFF_FLOAT

Флаг для 32-битных чисел с плавающей точкой IEEE.

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

TIFF_DOUBLE

public static final int TIFF_DOUBLE

Флаг для 64-битных чисел с плавающей точкой IEEE.

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

TIFF_IFD_POINTER

public static final int TIFF_IFD_POINTER

Флаг для указателя IFD, определённого в технической заметке 1 TIFF в дополнении 1 к спецификации TIFF.

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

MIN_DATATYPE

public static final int MIN_DATATYPE

Числовое наименьшее значение константы, представляющей тип данных TIFF.

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

MAX_DATATYPE

public static final int MAX_DATATYPE

Числовое наибольшее значение константы, представляющей тип данных TIFF.

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

UNKNOWN_TAG_NAME

public static final String UNKNOWN_TAG_NAME

Имя, присвоенное тегу с неизвестным номером. Такой тег может быть создан, например, при чтении IFD, когда встречен номер тега, который не содержится ни в одном из TIFFTagSet известных читателю.

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

Конструкторы

TIFFTag

public TIFFTag(String name,
               int number,
               int dataTypes,
               int count)

Создаёт TIFFTag с заданным именем, номером тега, набором допустимых типов данных и количеством значений. Отрицательное значение счётчика указывает, что разрешено произвольное число значений или требуется количество, определяемое значениями других полей в IFD. Положительное значение указывает число значений, которое должно содержать связанное поле. У тега не будет связанного TIFFTagSet.

Если существуют мнемонические имена, которые следует связать с допустимыми значениями данных для тега, следует вызвать addValueName() для каждого имени на новом экземпляре. Мнемонические имена применяются только к тегам с целочисленным типом данных.

См. документацию для getDataTypes() для объяснения, как набор типов данных должен быть преобразован в маску битов.

Параметры:
name - имя тега.
number - номер, используемый для представления тега.
dataTypes - маска битов, указывающая набор допустимых типов данных для этого тега.
count - количество значений для этого тега.
Исключения:
NullPointerException - если имя равно null.
IllegalArgumentException - если номер отрицательный или dataTypes отрицательный или задаёт тип вне диапазона.

TIFFTag

public TIFFTag(String name,
               int number,
               TIFFTagSet tagSet)

Создаёт TIFFTag с заданным именем, номером тега и TIFFTagSet, к которому он относится. Допустимые типы данных включают TIFF_LONG и TIFF_IFD_POINTER, а количество значений равно единице. TIFFTagSet будет представлять набор TIFFTags, которые появляются в указанном IFD. TIFFTag представляет собой указатель на IFD, если и только если tagSet не равен null или тип данных TIFF_IFD_POINTER разрешён.

Параметры:
name - имя тега.
number - номер, используемый для представления тега.
tagSet - TIFFTagSet, к которому принадлежит этот тег.
Исключения:
NullPointerException - если имя или tagSet равно null.
IllegalArgumentException - если номер отрицательный.
См. также:
TIFFTag(String, int, int, int)

TIFFTag

public TIFFTag(String name,
               int number,
               int dataTypes)

Создаёт TIFFTag с заданным именем, номером тега и набором допустимых типов данных. Количество значений тега не определено, и у него нет связанного TIFFTagSet.

Параметры:
name - имя тега.
number - номер, используемый для представления тега.
dataTypes - маска битов, указывающая набор допустимых типов данных для этого тега.
Исключения:
NullPointerException - если имя равно null.
IllegalArgumentException - если номер отрицательный или dataTypes отрицательный или задаёт тип вне диапазона.
См. также:
TIFFTag(String, int, int, int)

Методы

getSizeOfType

public static int getSizeOfType(int dataType)

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

Параметры:
dataType - тип данных для запроса.
Возвращает:
количество байтов, используемых для хранения заданного типа данных.
Выбрасывает:
IllegalArgumentException - если datatype меньше MIN_DATATYPE или больше MAX_DATATYPE.

getName

public String getName()

Возвращает имя тега, которое будет отображаться в метаданных изображения.

Возвращает:
имя тега в качестве String.

getNumber

public int getNumber()

Возвращает целое число, используемое для представления тега.

Возвращает:
номер тега в качестве int.

getDataTypes

public int getDataTypes()

Возвращает битовую маску, указывающую набор типов данных, которые могут использоваться для хранения данных, связанных с тегом. Например, тег, который может хранить значения как SHORT, так и LONG, вернёт значение:

(1 << TIFFTag.TIFF_SHORT) | (1 << TIFFTag.TIFF_LONG)

Возвращает:
a int, содержащую битовую маску, кодирующую набор допустимых типов данных.

getCount

public int getCount()

Возвращает количество значений этого тега. Если это значение положительное, оно представляет собой требуемое количество значений для TIFFField , имеющего этот тег. Если значение отрицательное, количество не определено. В последнем случае количество может быть выведено, например, количество значений поля BitsPerSample равно SamplesPerPixel, или оно может быть переменным, как в случае большинства полей US-ASCII.

Возвращает:
количество значений этого тега.

isDataTypeOK

public boolean isDataTypeOK(int dataType)

Возвращает true , если заданный тип данных может использоваться для данных, связанных с этим тегом.

Параметры:
dataType - тип данных для запроса, один из TIFF_BYTE, TIFF_SHORT, и т.д.
Возвращает:
a boolean , указывающее, может ли заданный тип данных использоваться с этим тегом.
Выбрасывает:
IllegalArgumentException - если datatype меньше MIN_DATATYPE или больше MAX_DATATYPE.

getTagSet

public TIFFTagSet getTagSet()

Возвращает TIFFTagSet, частью которого является этот тег.

Возвращает:
содержащий TIFFTagSet.

isIFDPointer

public boolean isIFDPointer()

Возвращает true , если этот тег используется для указания на структуру IFD, содержащую дополнительные теги. A TIFFTag представляет собой указатель IFD только в том случае, если его TIFFTagSet не null или тип данных TIFF_IFD_POINTER допустим. Это условие будет выполнено только в том случае, если либо getTagSet() != null , либо isDataTypeOK(TIFF_IFD_POINTER) == true.

Многие расширения TIFF используют механизм IFD, чтобы ограничить количество новых тегов, которые могут появиться в корневом IFD.

Возвращает:
true , если этот тег указывает на IFD.

hasValueNames

public boolean hasValueNames()

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

Возвращает:
true , если мнемонические имена значений доступны.

addValueName

protected void addValueName(int value,
                            String name)

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

Параметры:
value - значение данных.
name - имя для ассоциации со значением.

getValueName

public String getValueName(int value)

Возвращает мнемоническое имя, связанное с определённым значением, которое могут принимать данные этого тега, или null , если имя отсутствует. Мнемонические имена применяются только к тегам, которые имеют целочисленный тип данных.

Параметры:
value - значение данных.
Возвращает:
мнемоническое имя, связанное со значением, в качестве String.

getNamedValues

public int[] getNamedValues()

Возвращает массив значений, для которых определены мнемонические имена. Метод getValueName() вернёт ненулевое значение только для значений, содержащихся в возвращаемом массиве. Мнемонические имена применяются только к тегам, которые имеют целочисленный тип данных.

Возвращает:
значения, для которых существует мнемоническое имя.

© 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/javax/imageio/plugins/tiff/TIFFTag.html

Spec-Zone .ru
спецификации, руководства, описания, API