- java.lang.Object
-
- javax.imageio.plugins.tiff.TIFFTag
-
public class TIFFTag extends Object
定义TIFF标签概念的类。 TIFF标签是可能出现在图像文件目录(IFD)中的键。 在IFD中,每个标签具有与其相关联的一些数据,其可以由给定数据类型的零个或多个值组成。 标签和值的组合称为IFD条目或TIFF字段。标准(“基线”)tiff流的根IFD中使用的实际标签值在
BaselineTIFFTagSet类中定义。- 从以下版本开始:
- 9
- 另请参见:
-
BaselineTIFFTagSet,TIFFField,TIFFTagSet
-
-
Field Summary
Fields Modifier and Type Field 描述 static intMAX_DATATYPE表示TIFF数据类型的数字最大常数。static intMIN_DATATYPE表示TIFF数据类型的数字最小的常数。static intTIFF_ASCII标记为空终止的ASCII字符串。static intTIFF_BYTE8位无符号整数的标志。static intTIFF_DOUBLE标志为64位IEEE双精度。static intTIFF_FLOAT32位IEEE浮标的标志。static intTIFF_IFD_POINTERTIFF技术说明1中TIFF技术说明1中定义的IFD指针标志。static intTIFF_LONG32位无符号整数的标志。static intTIFF_RATIONAL32位无符号整数的标志。static intTIFF_SBYTE8位有符号整数的标志。static intTIFF_SHORT标志为16位无符号整数。static intTIFF_SLONG32位有符号整数的标志。static intTIFF_SRATIONAL32位有符号整数的标志。static intTIFF_SSHORT标志为16位有符号整数。static intTIFF_UNDEFINED8位未解释字节的标志。static StringUNKNOWN_TAG_NAME分配给具有未知标签号的标签的名称。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 protected voidaddValueName(int value, String name)为此标签的数据可能需要的特定值添加一个助记符名称。intgetCount()返回此标签的值计数。intgetDataTypes()返回指示可用于存储与标签相关联的数据的数据类型集的位掩码。StringgetName()返回标记的名称,因为它将显示在图像元数据中。int[]getNamedValues()返回定义助记符名称的值的数组。intgetNumber()返回用于表示标签的整数。static intgetSizeOfType(int dataType)返回用于存储给定数据类型的值的字节数。TIFFTagSetgetTagSet()返回此标签是其中的TIFFTagSet。StringgetValueName(int value)返回与该标签的数据可能占用的特定值相关联的助记符名称,如果没有名称,则null。booleanhasValueNames()如果存在与该标签相关联的数据的合法值集合的助记名称,则返回true。booleanisDataTypeOK(int dataType)如果给定的数据类型可以用于与此标签关联的数据,则返回true。booleanisIFDPointer()如果此标记用于指向包含其他标记的IFD结构,则返回true。
-
-
-
字段详细信息
-
TIFF_BYTE
public static final int TIFF_BYTE
8位无符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_ASCII
public static final int TIFF_ASCII
标记为空终止的ASCII字符串。- 另请参见:
- Constant Field Values
-
TIFF_SHORT
public static final int TIFF_SHORT
标志为16位无符号整数。- 另请参见:
- Constant Field Values
-
TIFF_LONG
public static final int TIFF_LONG
32位无符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_RATIONAL
public static final int TIFF_RATIONAL
32位无符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_SBYTE
public static final int TIFF_SBYTE
8位有符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_UNDEFINED
public static final int TIFF_UNDEFINED
8位未解释字节的标志。- 另请参见:
- Constant Field Values
-
TIFF_SSHORT
public static final int TIFF_SSHORT
标志为16位有符号整数。- 另请参见:
- Constant Field Values
-
TIFF_SLONG
public static final int TIFF_SLONG
32位有符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_SRATIONAL
public static final int TIFF_SRATIONAL
32位有符号整数的标志。- 另请参见:
- Constant Field Values
-
TIFF_FLOAT
public static final int TIFF_FLOAT
32位IEEE浮标的标志。- 另请参见:
- Constant Field Values
-
TIFF_DOUBLE
public static final int TIFF_DOUBLE
标志为64位IEEE双精度。- 另请参见:
- Constant Field Values
-
TIFF_IFD_POINTER
public static final int TIFF_IFD_POINTER
TIFF技术说明1中TIFF技术说明1中定义的IFD指针标志。- 另请参见:
- Constant Field Values
-
MIN_DATATYPE
public static final int MIN_DATATYPE
表示TIFF数据类型的数字最小的常数。- 另请参见:
- Constant Field Values
-
MAX_DATATYPE
public static final int MAX_DATATYPE
表示TIFF数据类型的数字最大常数。- 另请参见:
- Constant Field Values
-
UNKNOWN_TAG_NAME
public static final String UNKNOWN_TAG_NAME
分配给具有未知标签号的标签的名称。 这样的标签可以例如在读取IFD时被创建,并且遇到不在阅读器已知的任何TIFFTagSet的标签号。- 另请参见:
- Constant Field Values
-
-
构造方法详细信息
-
TIFFTag
public TIFFTag(String name, int number, int dataTypes, int count)
构造具有给定名称,标签号,法定数据类型集合和值计数的TIFFTag。 负值计数表示任意数量的值合法或所需计数由IFD中其他字段的值确定。 非负数指定相关字段必须包含的值的数量。 该标签将没有关联的TIFFTagSet。如果有助记符名称与标签的合法数据值相关联,则应在每个名称的新实例上调用
addValueName()。 助记符名称仅适用于具有整数数据类型的标签。有关如何将数据类型转换为位掩码的说明,请参阅
getDataTypes()的文档。- 参数
-
name- 标签的名称。 -
number- 用于表示标签的数字。 -
dataTypes- 指示该标签的法定数据类型集的位掩码。 -
count- 此标记的值计数。 - 异常
-
NullPointerException- 如果name为null。 -
IllegalArgumentException- 如果number为负数或dataTypes为负数或指定超出范围类型。
-
TIFFTag
public TIFFTag(String name, int number, TIFFTagSet tagSet)
构造一个TIFFTag具有给定的名称,标签号和TIFFTagSet。 法定数据类型设置为TIFF_LONG和TIFF_IFD_POINTER,值计数为1。TIFFTagSet将代表IFD指出的TIFFTag的一组。 ATIFFTag表示IFD指针,当且仅当tagSet为非null或数据类型TIFF_IFD_POINTER合法时。- 参数
-
name- 标签的名称。 -
number- 用于表示标签的数字。 -
tagSet- 该标签所属的TIFFTagSet。 - 异常
-
NullPointerException- 如果name或tagSet为null。 -
IllegalArgumentException- 如果number为负数。 - 另请参见:
-
TIFFTag(String, int, int, int)
-
TIFFTag
public TIFFTag(String name, int number, int dataTypes)
构造具有给定名称,标签号和法定数据类型的TIFFTag。 标签的值计数将是未定义的,它将没有关联的TIFFTagSet。- 参数
-
name- 标签的名称。 -
number- 用于表示标签的数字。 -
dataTypes- 指示该标签的法定数据类型集合的位掩码。 - 异常
-
NullPointerException- 如果name为null。 -
IllegalArgumentException- 如果number为负数或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)- 结果
-
一个
int包含编码有效数据类型集的位掩码。
-
getCount
public int getCount()
返回此标签的值计数。 如果此值为正,则表示具有此标记的TIFFField的所需数量值。 如果值为负,则计数未定义。 在后一种情况下,可以导出计数,例如,BitsPerSample字段的值的数量是SamplesPerPixel,或者可以是大多数US-ASCII字段的情况下的变量。- 结果
- 该标签的值计数。
-
isDataTypeOK
public boolean isDataTypeOK(int dataType)
如果给定的数据类型可以用于与此标签关联的数据,则返回true。- 参数
-
dataType-要查询的数据类型的一个TIFF_BYTE,TIFF_SHORT等 - 结果
-
一个
boolean指示给定的数据类型是否可以与该标签一起使用。 - 异常
-
IllegalArgumentException- 如果datatype小于MIN_DATATYPE或大于MAX_DATATYPE。
-
getTagSet
public TIFFTagSet getTagSet()
返回该标签是其中的TIFFTagSet。- 结果
-
包含
TIFFTagSet。
-
isIFDPointer
public boolean isIFDPointer()
如果此标记用于指向包含其他标记的IFD结构,则返回true。 ATIFFTag表示IFD指针,当且仅当其TIFFTagSet为非null或数据类型TIFF_IFD_POINTER合法时。 当且仅当getTagSet() != null或isDataTypeOK(TIFF_IFD_POINTER) == true才能满足此条件。许多TIFF扩展使用IFD机制来限制可能出现在根IFD中的新标签的数量。
- 结果
-
如果此标签指向IFD,
true。
-
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()
- 结果
- 有一个助记符名称的值。
-
-