Module  java.desktop

Class IIOMetadataFormatImpl

  • All Implemented Interfaces:
    IIOMetadataFormat


    public abstract class IIOMetadataFormatImpl
    extends Object
    implements IIOMetadataFormat
    一个具体的类,提供可重用的IIOMetadataFormat接口的实现。 另外,表示标准的静态实例,插件中性javax_imageio_1.0格式由getStandardFormatInstance方法提供。

    为了提供元素和属性的局部描述,一个ResourceBundle用的基本名称this.getClass().getName() + "Resources"应通过所使用的通常的机构供给ResourceBundle.getBundle 简而言之,子类根据命名约定提供一个或多个附加类(默认情况下,扩展为IIMetadataFormatImpl的子类的完全限定名称,加上字符串“资源”,以及以下划线分隔的国家/地区,语言和变体代码) 。 在运行时,调用getElementDescriptiongetAttributeDescription将尝试根据提供的区域设置动态加载这些类,并将使用元素名称或元素名称后跟一个'/'字符,后跟属性名称作为键。 该密钥将提供给ResourceBundlegetString方法,并返回所得到的节点或属性的本地化描述。

    子类可以使用setResourceBaseName方法为资源束提供不同的基本名称。

    如果需要,一个子类可以选择自己的定位机制,覆盖所提供的getElementDescriptiongetAttributeDescription

    另请参见:
    ResourceBundle.getBundle(String,Locale)
    • 字段详细信息

      • standardMetadataFormatName

        public static final String standardMetadataFormatName
        A String常量包含标准格式名称, "javax_imageio_1.0"
        另请参见:
        Constant Field Values
    • 构造方法详细信息

      • IIOMetadataFormatImpl

        public IIOMetadataFormatImpl​(String rootName,
                                     int childPolicy)
        构造一个空白的IIOMetadataFormatImpl实例,具有给定的根元素名称和子策略( CHILD_POLICY_REPEAT )。 附加元素及其属性和Object参考信息可以使用各种add方法添加。
        参数
        rootName - 根元素的名称。
        childPolicy - CHILD_POLICY_*常数之一,不包括 CHILD_POLICY_REPEAT
        异常
        IllegalArgumentException - 如果 rootNamenull
        IllegalArgumentException - 如果 childPolicy不是预定义的常量之一。
      • IIOMetadataFormatImpl

        public IIOMetadataFormatImpl​(String rootName,
                                     int minChildren,
                                     int maxChildren)
        构造一个空白的IIOMetadataFormatImpl实例,给定的根元素名称和子策略为CHILD_POLICY_REPEAT 附加元素及其属性和Object参考信息可以使用各种add方法添加。
        参数
        rootName - 根元素的名称。
        minChildren - 节点的最 minChildren数。
        maxChildren - 节点的最大子节点数。
        异常
        IllegalArgumentException - 如果 rootNamenull
        IllegalArgumentException - 如果 minChildren为负数或大于 maxChildren
    • 方法详细信息

      • setResourceBaseName

        protected void setResourceBaseName​(String resourceBaseName)
        设置一个新的基本名称来定位ResourceBundle s,其中包含此格式的元素和属性的描述。

        在第一次调用此方法之前,基本名称将等于this.getClass().getName() + "Resources"

        参数
        resourceBaseName - 一个包含新基本名称的 String
        异常
        IllegalArgumentException - 如果 resourceBaseNamenull
        另请参见:
        getResourceBaseName()
      • getResourceBaseName

        protected String getResourceBaseName​()
        返回当前设置的基本名称,以查找 ResourceBundle s。
        结果
        一个包含基本名称的 String
        另请参见:
        setResourceBaseName(java.lang.String)
      • addElement

        protected void addElement​(String elementName,
                                  String parentName,
                                  int childPolicy)
        使用 CHILD_POLICY_REPEAT以外的子策略向此元数据文档格式添加新元素类型。
        参数
        elementName - 新元素的名称。
        parentName - 将作为新元素的父元素的元素的名称。
        childPolicy - CHILD_POLICY_*常量之一,不包括 CHILD_POLICY_REPEAT ,表示新元素的子策略。
        异常
        IllegalArgumentException - 如果 parentNamenull ,或不是此格式的法定元素名称。
        IllegalArgumentException - 如果 childPolicy不是预定义的常量之一。
      • addElement

        protected void addElement​(String elementName,
                                  String parentName,
                                  int minChildren,
                                  int maxChildren)
        将新元素类型添加到此元数据文档格式,子策略为 CHILD_POLICY_REPEAT
        参数
        elementName - 新元素的名称。
        parentName - 将作为新元素的父元素的元素的名称。
        minChildren - 节点的最 minChildren节点数。
        maxChildren - 节点的最大子节点数。
        异常
        IllegalArgumentException - 如果 parentNamenull ,或不是此格式的合法元素名称。
        IllegalArgumentException - 如果 minChildren为负数或大于 maxChildren
      • addChildElement

        protected void addChildElement​(String elementName,
                                       String parentName)
        将一个现有元素添加到给定父节点类型的合法子节点列表中。
        参数
        parentName - 将作为元素的新父元素的元素的名称。
        elementName - 要作为子级添加的元素的名称。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
        IllegalArgumentException - 如果 parentNamenull ,或不是此格式的合法元素名称。
      • removeElement

        protected void removeElement​(String elementName)
        从格式中移除元素。 如果没有给定名称的元素存在,则不会发生任何事情,也不会抛出异常。
        参数
        elementName - 要删除的元素的名称。
      • addAttribute

        protected void addAttribute​(String elementName,
                                    String attrName,
                                    int dataType,
                                    boolean required,
                                    String defaultValue)
        将新属性添加到可以设置为任意值的先前定义的元素。
        参数
        elementName - 元素的名称。
        attrName - 要添加的属性的名称。
        dataType - 属性的数据类型(字符串格式), DATATYPE_*常量之一。
        required - true如果属性必须存在。
        defaultValue - 属性的默认值,或 null
        异常
        IllegalArgumentException - 如果 elementNamenull ,或不是此格式的合法元素名称。
        IllegalArgumentException - 如果 attrNamenull
        IllegalArgumentException - 如果 dataType不是预定义的常量之一。
      • addAttribute

        protected void addAttribute​(String elementName,
                                    String attrName,
                                    int dataType,
                                    boolean required,
                                    String defaultValue,
                                    List<String> enumeratedValues)
        向先前定义的元素添加一个新属性,该元素将由一组枚举值定义。
        参数
        elementName - 元素的名称。
        attrName - 要添加的属性的名称。
        dataType - 属性的数据类型(字符串格式), DATATYPE_*常量之一。
        required - true如果属性必须存在。
        defaultValue - 属性的默认值,或 null
        enumeratedValues - a ListString s包含属性的合法值。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
        IllegalArgumentException - 如果 attrNamenull
        IllegalArgumentException - 如果 dataType不是预定义的常量之一。
        IllegalArgumentException - 如果 enumeratedValuesnull
        IllegalArgumentException - 如果 enumeratedValues不包含至少一个条目。
        IllegalArgumentException - 如果 enumeratedValues包含不是 Stringnull
      • addAttribute

        protected void addAttribute​(String elementName,
                                    String attrName,
                                    int dataType,
                                    boolean required,
                                    String defaultValue,
                                    String minValue,
                                    String maxValue,
                                    boolean minInclusive,
                                    boolean maxInclusive)
        向先前定义的元素添加一个新属性,该元素将由一系列值定义。
        参数
        elementName - 元素的名称。
        attrName - 要添加的属性的名称。
        dataType - 属性的数据类型(字符串格式), DATATYPE_*常量之一。
        required - true如果属性必须存在。
        defaultValue - 属性的默认值,或 null
        minValue - minValue的最小(包括或排除取决于值 minInclusive )合法值,为 String
        maxValue - maxValue的最大(包括或排除取决于 minInclusive的值)法定值,作为 String
        如果是 trueminValue minInclusive - true
        maxInclusive - true如果是 maxValue是包含的。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的法定元素名称。
        IllegalArgumentException - 如果 attrNamenull
        IllegalArgumentException - 如果 dataType不是预定义的常量之一。
      • addAttribute

        protected void addAttribute​(String elementName,
                                    String attrName,
                                    int dataType,
                                    boolean required,
                                    int listMinLength,
                                    int listMaxLength)
        将新属性添加到由值列表定义的先前定义的元素中。
        参数
        elementName - 元素的名称。
        attrName - 要添加的属性的名称。
        dataType - 属性的数据类型(字符串格式), DATATYPE_*常量之一。
        required - true如果属性必须存在。
        listMinLength - 列表项的最小合法数量。
        listMaxLength - 列表项的最大合法数量。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或不是此格式的法定元素名称。
        IllegalArgumentException - 如果 attrNamenull
        IllegalArgumentException - 如果 dataType不是预定义的常量之一。
        IllegalArgumentException - 如果 listMinLength为负数或大于 listMaxLength
      • addBooleanAttribute

        protected void addBooleanAttribute​(String elementName,
                                           String attrName,
                                           boolean hasDefaultValue,
                                           boolean defaultValue)
        向先前定义的元素添加一个新属性,该元素将由枚举值 TRUEFALSE ,数据类型为 DATATYPE_BOOLEAN
        参数
        elementName - 元素的名称。
        attrName - 要添加的属性的名称。
        hasDefaultValue - true如果应该存在默认值。
        defaultValue - 属性的默认值为 boolean ,如果 hasDefaultValuefalse ,则忽略 hasDefaultValue值。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或不是此格式的合法元素名称。
        IllegalArgumentException - 如果 attrNamenull
      • removeAttribute

        protected void removeAttribute​(String elementName,
                                       String attrName)
        从先前定义的元素中删除一个属性。 如果给定元素中没有给定名称的属性,则不会发生任何事情,也不会抛出任何异常。
        参数
        elementName - 元素的名称。
        attrName - 要删除的属性的名称。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的法定元素名称。
      • addObjectValue

        protected <T> void addObjectValue​(String elementName,
                                          Class<T> classType,
                                          boolean required,
                                          T defaultValue)
        允许Object要被存储在实现指定元素的节点给定类型的参考。 Object的值不受其类型的约束。

        如果以前允许Object引用,以前的设置将被覆盖。

        参数类型
        T - 对象的类型。
        参数
        elementName - 元素的名称。
        classType - 一个 Class变量,指示对象值的合法类类型。
        如果对象值必须存在, required - true
        defaultValue - Object参考的默认值,或 null
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
      • addObjectValue

        protected <T> void addObjectValue​(String elementName,
                                          Class<T> classType,
                                          boolean required,
                                          T defaultValue,
                                          List<? extends T> enumeratedValues)
        允许给定类类型的Object引用存储在实现命名元素的节点中。 Object的值必须是enumeratedValues给出的值enumeratedValues

        如果以前允许Object引用,则以前的设置将被覆盖。

        参数类型
        T - 对象的类型。
        参数
        elementName - 元素的名称。
        classType - 一个 Class变量,指示对象值的合法类类型。
        required - true如果一个对象值必须存在。
        defaultValue - Object参考的默认值,或 null
        enumeratedValues - 一个 ListObject其中包含对象引用的合法值。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的法定元素名称。
        IllegalArgumentException - 如果 enumeratedValuesnull
        IllegalArgumentException - 如果 enumeratedValues不包含至少一个条目。
        IllegalArgumentException - 如果 enumeratedValues包含不是由 classType表示的类型的实例的元素,或者是 null
      • addObjectValue

        protected <T extends Object & Comparable<? super T>> void addObjectValue​(String elementName,
                                                                                 Class<T> classType,
                                                                                 T defaultValue,
                                                                                 Comparable<? super T> minValue,
                                                                                 Comparable<? super T> maxValue,
                                                                                 boolean minInclusive,
                                                                                 boolean maxInclusive)
        允许给定类类型的Object引用存储在实现命名元素的节点中。 Object的值必须在minValuemaxValue给出的范围内。 此外,类类型必须实现Comparable接口。

        如果以前允许Object引用,则以前的设置将被覆盖。

        参数类型
        T - 对象的类型。
        参数
        elementName - 元素的名称。
        classType - 一个 Class变量,指示对象值的合法类类型。
        defaultValue - 的默认值
        minValue - 最小(包括或排除取决于 minInclusive的值)对象值的合法值,作为 String
        maxValue - 最大(包括或排除取决于 minInclusive的值)对象值的合法值,作为 String
        minInclusive - true如果是 minValue )。
        maxInclusive - true如果 maxValue是包容。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或不是此格式的合法元素名称。
      • addObjectValue

        protected void addObjectValue​(String elementName,
                                      Class<?> classType,
                                      int arrayMinLength,
                                      int arrayMaxLength)
        允许Object要被存储在实现指定元素的节点给定类型的参考。 Object的值必须由classType给出的类类型的classType ,至少有arrayMinLength和最多arrayMaxLength元素。

        如果以前允许引用Object ,以前的设置将被覆盖。

        参数
        elementName - 元素的名称。
        classType - 一个 Class变量,指示对象值的合法类类型。
        arrayMinLength - 数组的最小合法长度。
        arrayMaxLength - 阵列最大合法长度。
        异常
        IllegalArgumentException - 如果 elementName不是此格式的合法元素名称。
      • removeObjectValue

        protected void removeObjectValue​(String elementName)
        不允许将 Object引用存储在实现命名元素的节点中。
        参数
        elementName - 元素的名称。
        异常
        IllegalArgumentException - 如果 elementName不是此格式的合法元素名称。
      • canNodeAppear

        public abstract boolean canNodeAppear​(String elementName,
                                              ImageTypeSpecifier imageType)
        描述从接口IIOMetadataFormat复制
        如果允许元素true的元素(及其下面的子树)显示给由ImageTypeSpecifier定义的给定类型的图像,则ImageTypeSpecifier 例如,元数据文档格式可能包含描述图像基本颜色的元素,这在编写灰度图像时不允许。
        Specified by:
        canNodeAppear在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        imageType - 表示将与元数据相关联的图像类型的 ImageTypeSpecifier
        结果
        true如果节点对于给定类型的图像是有意义的。
      • getElementMinChildren

        public int getElementMinChildren​(String elementName)
        描述从接口IIOMetadataFormat复制
        返回具有子策略CHILD_POLICY_REPEAT的命名元素的最CHILD_POLICY_REPEAT 例如,表示颜色主要信息的元素可能需要至少有3个小孩,每个小学一个。
        Specified by:
        getElementMinChildren在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 int
      • getElementMaxChildren

        public int getElementMaxChildren​(String elementName)
        描述从接口IIOMetadataFormat复制
        返回具有子策略CHILD_POLICY_REPEAT的命名元素的最大子CHILD_POLICY_REPEAT 例如,可以允许在8位调色板中表示条目的元素重复多达256次。 可以使用值Integer.MAX_VALUE来指定没有上限。
        Specified by:
        getElementMaxChildren在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 int
      • getElementDescription

        public String getElementDescription​(String elementName,
                                            Locale locale)
        返回String含有指定元素,或的描述null 如果可能,说明将被本地化为所提供的Locale

        默认的实现会首先找到一个ResourceBundle利用当前资源基本名称由设置setResourceBaseName和供应Locale ,使用中的注释中描述的应变机制ResourceBundle.getBundle 如果找到一个ResourceBundle ,则元素名称将用作其getString方法的键,并返回结果。 如果没有找到ResourceBundle ,或者没有这样的密钥, null将被退回。

        如果localenull ,当前的默认Locale由归国Locale.getLocale将被使用。

        Specified by:
        getElementDescription在接口 IIOMetadataFormat
        参数
        elementName - 元素的名称。
        locale - 将尝试本地化的 Locale
        结果
        元素描述。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或不是此格式的合法元素名称。
        另请参见:
        setResourceBaseName(java.lang.String)
      • getChildPolicy

        public int getChildPolicy​(String elementName)
        描述从界面IIOMetadataFormat复制
        返回从 CHILD_POLICY_开始的常量 CHILD_POLICY_ ,指示命名元素的子代的合法模式。
        Specified by:
        getChildPolicy在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        其中一个 CHILD_POLICY_*常量。
      • getChildNames

        public String[] getChildNames​(String elementName)
        说明从接口IIOMetadataFormat复制
        返回一个String s的数组,表示允许作为命名元素的子元素的元素的名称,按照它们应该出现的顺序。 如果该元素不能有子项,则返回null
        Specified by:
        getChildNames在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个数组为 String s,或为null。
      • getAttributeNames

        public String[] getAttributeNames​(String elementName)
        说明从接口IIOMetadataFormat复制
        返回一个 String的数组,列出可能与命名元素相关联的属性的名称。
        Specified by:
        getAttributeNames在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 String的阵列。
      • getAttributeValueType

        public int getAttributeValueType​(String elementName,
                                         String attrName)
        说明从接口IIOMetadataFormat复制
        返回以 VALUE_开头的常量 VALUE_ ,指示指定元素中给定属性的值是否是任意的,被限制在指定范围内,被限制为一组枚举值之一,或者是空格分隔的列表的任意值。
        Specified by:
        getAttributeValueType接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        其中一个 VALUE_*常数。
      • getAttributeDataType

        public int getAttributeDataType​(String elementName,
                                        String attrName)
        描述从接口IIOMetadataFormat复制
        返回以DATATYPE_开头的常量DATATYPE_ ,表示指定元素中给定属性的值的格式和解释。 如果getAttributeValueType返回VALUE_LIST ,则合法值是返回数据类型的值的空白列表。
        Specified by:
        getAttributeDataType在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        其中一个 DATATYPE_*常量。
      • isAttributeRequired

        public boolean isAttributeRequired​(String elementName,
                                           String attrName)
        说明从接口IIOMetadataFormat复制
        如果命名的属性必须在命名的元素中,则返回 true
        Specified by:
        isAttributeRequired在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        true如果属性必须存在。
      • getAttributeDefaultValue

        public String getAttributeDefaultValue​(String elementName,
                                               String attrName)
        说明从接口IIOMetadataFormat复制
        如果没有默认值可用,则返回命名属性的默认值(如果它未显式存在于命名元素中), String ,或 null
        Specified by:
        getAttributeDefaultValue在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        一个 String包含默认值,或 null
      • getAttributeEnumerations

        public String[] getAttributeEnumerations​(String elementName,
                                                 String attrName)
        描述从接口IIOMetadataFormat复制
        返回一个包含指定元素中给定属性的合法枚举值的数组String 此方法只能在getAttributeValueType返回VALUE_ENUMERATION被调用。
        Specified by:
        getAttributeEnumerations在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        一个 String的阵列。
      • getAttributeMinValue

        public String getAttributeMinValue​(String elementName,
                                           String attrName)
        描述从接口IIOMetadataFormat复制
        返回属性的最小合法值。 该值是否包含或排除可以由值getAttributeValueType确定。 该值返回为String ; 其解释取决于getAttributeDataType的价值。 该方法只能在getAttributeValueType返回VALUE_RANGE_*
        Specified by:
        getAttributeMinValue在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        一个 String包含该属性的最小合法值。
      • getAttributeMaxValue

        public String getAttributeMaxValue​(String elementName,
                                           String attrName)
        说明从接口IIOMetadataFormat复制
        返回属性的最大合法值。 该值是否包含或排除可以由值getAttributeValueType确定。 该值返回为String ; 其解释取决于getAttributeDataType的值。 仅当getAttributeValueType返回VALUE_RANGE_*才应该调用此方法。
        Specified by:
        getAttributeMaxValue接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称,作为 String
        attrName - 要查询的属性的名称。
        结果
        一个 String包含该属性的最大合法值。
      • getAttributeListMinLength

        public int getAttributeListMinLength​(String elementName,
                                             String attrName)
        说明从接口IIOMetadataFormat复制
        返回可用于定义此属性的列表项的最小数量。 属性本身定义为包含多个空格分隔的项目的String 仅当getAttributeValueType返回VALUE_LIST才应该调用此方法。
        Specified by:
        getAttributeListMinLength在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        属性的列表项的最小合法数量。
      • getAttributeListMaxLength

        public int getAttributeListMaxLength​(String elementName,
                                             String attrName)
        说明从接口IIOMetadataFormat复制
        返回可用于定义此属性的列表项的最大数量。 可以使用值Integer.MAX_VALUE来指定没有上限。 属性本身定义为包含多个空格分隔的项目的String 该方法只能在getAttributeValueType返回VALUE_LIST被调用。
        Specified by:
        getAttributeListMaxLength在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        attrName - 要查询的属性的名称。
        结果
        属性的列表项的最大合法数量。
      • getAttributeDescription

        public String getAttributeDescription​(String elementName,
                                              String attrName,
                                              Locale locale)
        返回一个String其中包含命名属性的描述,或null 如果可能,说明将被本地化为所提供的Locale

        默认的实现会首先找到一个ResourceBundle利用当前资源基本名称由设置setResourceBaseName和供应Locale ,使用中的注释中描述的应变机制ResourceBundle.getBundle 如果找到一个ResourceBundle ,那么元素名称后跟一个“/”字符后跟属性名称( elementName + "/" + attrName )将被用作其getString方法的键,并返回结果。 如果没有找到ResourceBundle ,或者没有这样的密钥, null将被退回。

        如果localenull ,当前的默认Locale由归国Locale.getLocale将被使用。

        Specified by:
        getAttributeDescription在接口 IIOMetadataFormat
        参数
        elementName - 元素的名称。
        attrName - 属性的名称。
        locale - 将尝试本地化的 Locale ,或 null
        结果
        属性描述。
        异常
        IllegalArgumentException - 如果 elementNamenull ,或者不是此格式的合法元素名称。
        IllegalArgumentException - 如果 attrNamenull或不是此元素的合法属性名称。
        另请参见:
        setResourceBaseName(java.lang.String)
      • getObjectValueType

        public int getObjectValueType​(String elementName)
        说明从接口IIOMetadataFormat复制
        返回以VALUE_开头的枚举值VALUE_ ,指示Object引用允许的值(枚举,范围或数组)的Object 如果给定元素中没有存储对象值,则该方法的结果将为VALUE_NONE

        Object引用的法定值定义为范围必须实现Comparable接口。

        Specified by:
        getObjectValueType接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        其中一个 VALUE_*常量。
        另请参见:
        Comparable
      • getObjectClass

        public Class<?> getObjectClass​(String elementName)
        描述从接口IIOMetadataFormat复制
        返回Class类型的Object存储在元素中引用。 如果此元素可能不包含Object引用,则将抛出IllegalArgumentException 如果类类型是数组,则该字段指示底层类型( 例如 ,对于int的数组,此方法将返回int.class )。

        Object引用的法定值定义为范围必须实现Comparable接口。

        Specified by:
        getObjectClass在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 Class对象。
      • getObjectDefaultValue

        public Object getObjectDefaultValue​(String elementName)
        说明从界面: IIOMetadataFormat复制
        返回一个 Object其中包含命名元素中的 Object引用的默认值。
        Specified by:
        getObjectDefaultValue接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 Object
      • getObjectEnumerations

        public Object[] getObjectEnumerations​(String elementName)
        说明从接口IIOMetadataFormat复制
        返回一个Object的数组, Object包含命名元素中的Object引用的合法枚举值。 该方法只能在getObjectValueType返回VALUE_ENUMERATION

        与接受枚举值的节点相关联的Object必须等于由==运算符定义的此方法返回的值之一(与Object.equals方法相反)。

        Specified by:
        getObjectEnumerations在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        一个 Object的阵列。
      • getObjectMinValue

        public Comparable<?> getObjectMinValue​(String elementName)
        说明从接口IIOMetadataFormat复制
        返回指定元素中Object引用的最小合法值。 该值是否包含或排除可以由值getObjectValueType确定。 只有当getObjectValueType返回以VALUE_RANGE开头的常量之一时,才应该调用此方法。
        Specified by:
        getObjectMinValue在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        该属性的最小合法值。
      • getObjectMaxValue

        public Comparable<?> getObjectMaxValue​(String elementName)
        描述从接口IIOMetadataFormat复制
        返回指定元素中Object引用的最大合法值。 该值是否包含或排除可由getObjectValueType的值确定。 仅当getObjectValueType返回以VALUE_RANGE开头的常量之一时,才应该调用此方法。
        Specified by:
        getObjectMaxValue在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        该属性的最小合法值。
      • getObjectArrayMinLength

        public int getObjectArrayMinLength​(String elementName)
        说明从界面IIOMetadataFormat复制
        返回可用于定义指定元素中的Object引用的最小数组元素数。 该方法只能在getObjectValueType返回VALUE_LIST
        Specified by:
        getObjectArrayMinLength在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        Object参考的最小有效数组长度。
      • getObjectArrayMaxLength

        public int getObjectArrayMaxLength​(String elementName)
        描述从接口IIOMetadataFormat复制
        返回可用于定义指定元素中的Object引用的最大数组元素数。 可以使用Integer.MAX_VALUE的值来指定没有上限。 该方法只能在getObjectValueType返回VALUE_LIST被调用。
        Specified by:
        getObjectArrayMaxLength在接口 IIOMetadataFormat
        参数
        elementName - 要查询的元素的名称。
        结果
        Object参考的最大有效数组长度。
      • getStandardFormatInstance

        public static IIOMetadataFormat getStandardFormatInstance​()
        描述 IIOMetadataFormat对象,描述 javax.imageio.metadata包的注释中描述的标准,插件中性 javax.imageio_1.0元数据文档格式。
        结果
        一个预定义的 IIOMetadataFormat实例。