1264 lines
72 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.imageio.metadata
</div>
<h2 class="title" title="Class IIOMetadata">Class IIOMetadata</h2>
</div><div class="contentContainer">
<ul class="inheritance">
<li><a href="../../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>javax.imageio.metadata.IIOMetadata</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">IIOMetadata</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></pre>
<div class="block">
<span>由与图像和流相关联的元数据(非图像数据)的对象扩展的抽象类。</span>
<span>插件表示使用不透明的插件特定对象的元数据。</span>
<span>但是这些对象能够以支持XML DOM接口的<code>IIOMetadataNode</code>对象的形式访问其内部信息,以及用于存储非文本数据和检索有关法律数据值的信息的附加接口。</span>
<span>这种树的格式依赖于插件,但插件可能选择支持下述插件中性格式。</span>
<span>一个插件可以支持多个元数据格式,其名称可以通过调用<code>getMetadataFormatNames</code><code>getMetadataFormatNames</code></span>
<span>该插件还可以支持被称为“本地”格式的单一特殊格式,其被设计为无损地对其元数据进行编码。</span>
<span>这种格式通常将专门设计为使用特定的文件格式,以便可以以相同的格式加载和保存图像,而不会丢失元数据,但对于不同图像的<code>ImageReader</code><code>ImageWriter</code>之间传输元数据可能不太有用格式。</span>
<span>要像图像文件格式一样无损地转换两种本机格式,必须使用<code>ImageTranscoder</code>对象。</span>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/ImageReader.html#getImageMetadata-int-"><code>ImageReader.getImageMetadata(int)</code></a> <a href="../../../javax/imageio/ImageReader.html#getStreamMetadata--"><code>ImageReader.getStreamMetadata()</code></a> <a href="../../../javax/imageio/ImageReader.html#readAll-int-javax.imageio.ImageReadParam-"><code>ImageReader.readAll(int, javax.imageio.ImageReadParam)</code></a> <a href="../../../javax/imageio/ImageWriter.html#getDefaultStreamMetadata-javax.imageio.ImageWriteParam-"><code>ImageWriter.getDefaultStreamMetadata(javax.imageio.ImageWriteParam)</code></a> <a href="../../../javax/imageio/ImageWriter.html#getDefaultImageMetadata-javax.imageio.ImageTypeSpecifier-javax.imageio.ImageWriteParam-"><code>ImageWriter.getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam)</code></a> <a href="../../../javax/imageio/ImageWriter.html#write-javax.imageio.metadata.IIOMetadata-javax.imageio.IIOImage-javax.imageio.ImageWriteParam-"><code>ImageWriter.write(javax.imageio.metadata.IIOMetadata, javax.imageio.IIOImage, javax.imageio.ImageWriteParam)</code></a> <a href="../../../javax/imageio/ImageWriter.html#convertImageMetadata-javax.imageio.metadata.IIOMetadata-javax.imageio.ImageTypeSpecifier-javax.imageio.ImageWriteParam-"><code>ImageWriter.convertImageMetadata(javax.imageio.metadata.IIOMetadata, javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam)</code></a> <a href="../../../javax/imageio/ImageWriter.html#convertStreamMetadata-javax.imageio.metadata.IIOMetadata-javax.imageio.ImageWriteParam-"><code>ImageWriter.convertStreamMetadata(javax.imageio.metadata.IIOMetadata, javax.imageio.ImageWriteParam)</code></a> <a href="../../../javax/imageio/IIOImage.html" title="javax.imageio中的类"><code>IIOImage</code></a> <a href="../../../javax/imageio/ImageTranscoder.html" title="javax.imageio中的接口"><code>ImageTranscoder</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- --> </a> <h3>Field Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Field Summary table, listing fields, and an explanation">
<caption>
<span>Fields</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#controller">controller</a></span></code>
<div class="block">
<code>IIOMetadataController</code>将用于提供此设置
<code>IIOMetadata</code>对象时
<code>activateController</code>方法被调用。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#defaultController">defaultController</a></span></code>
<div class="block">
一个
<code>IIOMetadataController</code>用作这个
<code>IIOMetadata</code>对象的控制器的
<code>IIOMetadata</code>
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#extraMetadataFormatClassNames">extraMetadataFormatClassNames</a></span></code>
<div class="block">
实现
<code>IIOMetadataFormat</code>的类的名称数组,并表示该
<code>IIOMetadataFormat</code>支持的元数据格式,而不是标准和本地格式,初始化为
<code>null</code>并通过
<code>null</code>进行设置。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#extraMetadataFormatNames">extraMetadataFormatNames</a></span></code>
<div class="block">
该插件支持的格式名称不同于标准和本机格式,初始化为
<code>null</code>并通过构造函数设置。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#nativeMetadataFormatClassName">nativeMetadataFormatClassName</a></span></code>
<div class="block">
实现
<code>IIOMetadataFormat</code>并表示原生元数据格式的类的名称,初始化为
<code>null</code>并通过构造函数设置。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#nativeMetadataFormatName">nativeMetadataFormatName</a></span></code>
<div class="block">
该对象的本机元数据格式的名称,初始化为
<code>null</code> ,并通过
<code>null</code>进行设置。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#standardFormatSupported">standardFormatSupported</a></span></code>
<div class="block">
一个布尔值,指示具体的子类是否支持通过构造函数设置的标准元数据格式。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- --> </a> <h3>构造方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption>
<span>构造方法</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#IIOMetadata--">IIOMetadata</a></span>()</code>
<div class="block">
构造一个空的
<code>IIOMetadata</code>对象。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#IIOMetadata-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-">IIOMetadata</a></span>(boolean standardMetadataFormatSupported, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatClassName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatNames, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatClassNames)</code>
<div class="block">
使用给定的格式名称和格式类名构造一个
<code>IIOMetadata</code>对象,以及一个指示是否支持标准格式的布尔值。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--">activateController</a></span>()</code>
<div class="block">
激活此
<code>IIOMetadata</code>对象的安装
<code>IIOMetadataController</code> ,并返回结果值。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>abstract <a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getAsTree-java.lang.String-">getAsTree</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName)</code>
<div class="block">
根据给定的元数据格式定义的约定返回一个XML DOM
<code>Node</code>对象,该对象表示包含在该对象中的元数据树的根。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getController--">getController</a></span>()</code>
<div class="block">
返回
<code>IIOMetadataController</code>安装的IIOMetadataController。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--">getDefaultController</a></span>()</code>
<div class="block">
返回默认的
<code>IIOMetadataController</code> ,如果有一个,不管当前安装的控制器。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code><a href="../../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getExtraMetadataFormatNames--">getExtraMetadataFormatNames</a></span>()</code>
<div class="block">
返回的数组
<code>String</code>含的附加的元数据格式,比天然和标准格式,此插件中的识别名字小号
<code>getAsTree</code>
<code>setFromTree</code>
<code>mergeTree</code>方法。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code><a href="../../../javax/imageio/metadata/IIOMetadataFormat.html" title="interface in javax.imageio.metadata">IIOMetadataFormat</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormat-java.lang.String-">getMetadataFormat</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName)</code>
<div class="block">
返回一个
<code>IIOMetadataFormat</code>对象描述给定的元数据格式,或
<code>null</code>如果没有可用的描述。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code><a href="../../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--">getMetadataFormatNames</a></span>()</code>
<div class="block">
返回数组
<code>String</code>包含的所有元数据格式的名称,包括本地和标准格式,通过此插件的认为科学
<code>getAsTree</code>
<code>setFromTree</code>
<code>mergeTree</code>方法。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code><a href="../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getNativeMetadataFormatName--">getNativeMetadataFormatName</a></span>()</code>
<div class="block">
返回此插件的“本机”元数据格式的名称,通常允许以该插件处理的格式存储的元数据进行无损编码和传输。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardChromaNode--">getStandardChromaNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的色度信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardCompressionNode--">getStandardCompressionNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的压缩信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="altColor" id="i10">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDataNode--">getStandardDataNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的数据格式信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="rowColor" id="i11">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDimensionNode--">getStandardDimensionNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的尺寸信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="altColor" id="i12">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDocumentNode--">getStandardDocumentNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的文档信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="rowColor" id="i13">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTextNode--">getStandardTextNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的文字信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="altColor" id="i14">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTileNode--">getStandardTileNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的平铺信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="rowColor" id="i15">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTransparencyNode--">getStandardTransparencyNode</a></span>()</code>
<div class="block">
返回一个
<code>IIOMetadataNode</code>表示标准的透明度信息
<code>javax_imageio_1.0</code>元数据格式,或
<code>null</code>如果没有这样的信息是可用的。
</div> </td>
</tr>
<tr class="altColor" id="i16">
<td class="colFirst"><code>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--">getStandardTree</a></span>()</code>
<div class="block">
根据标准
<code>javax_imageio_1.0</code>元数据格式的约定,返回表示此对象中包含的元数据的
<code>IIOMetadataNode</code> s的树的实用方法。
</div> </td>
</tr>
<tr class="rowColor" id="i17">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--">hasController</a></span>()</code>
<div class="block">
如果为此
<code>IIOMetadata</code>对象安装了控制器,则返回
<code>true</code>
</div> </td>
</tr>
<tr class="altColor" id="i18">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#isReadOnly--">isReadOnly</a></span>()</code>
<div class="block">
返回
<code>true</code>如果此对象不支持
<code>mergeTree</code>
<code>setFromTree</code>
<code>reset</code>方法。
</div> </td>
</tr>
<tr class="rowColor" id="i19">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#isStandardMetadataFormatSupported--">isStandardMetadataFormatSupported</a></span>()</code>
<div class="block">
返回
<code>true</code>如果标准元数据格式是由支持
<code>getMetadataFormat</code>
<code>getAsTree</code>
<code>setFromTree</code>
<code>mergeTree</code>
</div> </td>
</tr>
<tr class="altColor" id="i20">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#mergeTree-java.lang.String-org.w3c.dom.Node-">mergeTree</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName, <a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> root)</code>
<div class="block">
从XML DOM
<code>Node</code>的树中更改此
<code>IIOMetadata</code>对象的内部状态,其语法由给定的元数据格式定义。
</div> </td>
</tr>
<tr class="rowColor" id="i21">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#reset--">reset</a></span>()</code>
<div class="block">
将此对象中存储的所有数据重置为默认值,通常是在构建后立即处于该对象的状态,尽管精确的语义是插件特定的。
</div> </td>
</tr>
<tr class="altColor" id="i22">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-">setController</a></span>(<a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> controller)</code>
<div class="block">
设置
<code>IIOMetadataController</code>被用来提供用于此设置
<code>IIOMetadata</code>对象时
<code>activateController</code>方法被调用时,重写所有默认控制器。
</div> </td>
</tr>
<tr class="rowColor" id="i23">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/metadata/IIOMetadata.html#setFromTree-java.lang.String-org.w3c.dom.Node-">setFromTree</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName, <a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> root)</code>
<div class="block">
从XML DOM
<code>Node</code>的树中设置此
<code>IIOMetadata</code>对象的内部状态,其语法由给定的元数据格式定义。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../../java/lang/Object.html#clone--">clone</a>, <a href="../../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../../java/lang/Object.html#notify--">notify</a>, <a href="../../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../../java/lang/Object.html#toString--">toString</a>, <a href="../../../java/lang/Object.html#wait--">wait</a>, <a href="../../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
</ul> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- --> </a> <h3>字段详细信息</h3> <a name="standardFormatSupported">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>standardFormatSupported</h4> <pre>protected boolean standardFormatSupported</pre>
<div class="block">
一个布尔值,指示具体的子类是否支持通过构造函数设置的标准元数据格式。
</div> </li>
</ul> <a name="nativeMetadataFormatName">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>nativeMetadataFormatName</h4> <pre>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatName</pre>
<div class="block">
该对象的本机元数据格式的名称,初始化为
<code>null</code> ,并通过
<code>null</code>进行设置。
</div> </li>
</ul> <a name="nativeMetadataFormatClassName">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>nativeMetadataFormatClassName</h4> <pre>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatClassName</pre>
<div class="block">
实现
<code>IIOMetadataFormat</code>并表示本机元数据格式的类的名称,初始化为
<code>null</code>并通过构造函数设置。
</div> </li>
</ul> <a name="extraMetadataFormatNames">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>extraMetadataFormatNames</h4> <pre>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatNames</pre>
<div class="block">
这个插件支持的格式名称不同于标准和本机格式,初始化为
<code>null</code> ,并通过
<code>null</code>进行设置。
</div> </li>
</ul> <a name="extraMetadataFormatClassNames">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>extraMetadataFormatClassNames</h4> <pre>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatClassNames</pre>
<div class="block">
实现
<code>IIOMetadataFormat</code>的类的名称数组,并表示该
<code>IIOMetadataFormat</code>支持的元数据格式(标准和本机格式),初始化为
<code>null</code> ,并通过
<code>null</code>进行设置。
</div> </li>
</ul> <a name="defaultController">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>defaultController</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> defaultController</pre>
<div class="block">
<span>一个<code>IIOMetadataController</code>被建议用作控制器此<code>IIOMetadata</code>对象。</span>
<span>它可以通过<code>getDefaultController</code></span>
<span>要安装默认控制器,请致电<code>setController(getDefaultController())</code></span>
<span>这个实例变量应该由子类设置它们选择提供自己的默认控制器通常是GUI来设置参数。</span>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--"><code>getDefaultController()</code></a></span>
</dd>
</dl> </li>
</ul> <a name="controller">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>controller</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> controller</pre>
<div class="block">
<span><code>IIOMetadataController</code>将用于提供此设置<code>IIOMetadata</code>对象时<code>activateController</code>方法被调用。</span>
<span>该值覆盖任何默认控制器,即使是<code>null</code></span>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-"><code>setController(IIOMetadataController)</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--"><code>hasController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--"><code>activateController()</code></a></span>
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="IIOMetadata--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>IIOMetadata</h4> <pre>protected IIOMetadata()</pre>
<div class="block">
<span>构造一个空的<code>IIOMetadata</code>对象。</span>
<span>子类负责为所有受保护的实例变量提供值,这些变量将允许任何未被覆盖的方法的默认实现来满足他们的合同。</span>
<span>例如, <code>extraMetadataFormatNames</code>不应该有0。</span>
</div> </li>
</ul> <a name="IIOMetadata-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>IIOMetadata</h4> <pre>protected IIOMetadata(boolean standardMetadataFormatSupported,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeMetadataFormatClassName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatNames,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraMetadataFormatClassNames)</pre>
<div class="block">
<span>构造具有给定格式名称和格式类名称的<code>IIOMetadata</code>对象,以及指示是否支持标准格式的布尔。</span>
<p> <span>此构造函数不会尝试检查类名的有效性。</span> <span>在getMetadataFormat的后续调用中无效的类名可能会导致<code>getMetadataFormat</code></span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>standardMetadataFormatSupported</code> -
<code>true</code>如果此对象可以使用标准元数据格式返回或接受DOM树。
</dd>
<dd>
<code>nativeMetadataFormatName</code> - 原生元数据格式的名称,如
<code>String</code> ,或
<code>null</code>如果没有本机格式。
</dd>
<dd>
<code>nativeMetadataFormatClassName</code> - 本机元数据格式的类的名称,如果没有本机格式,
<code>null</code>
</dd>
<dd>
<code>extraMetadataFormatNames</code> -的阵列
<code>String</code>以及指示由该对象,或支持其他格式
<code>null</code>如果有没有。
</dd>
<dd>
<code>extraMetadataFormatClassNames</code> - 一个
<code>extraMetadataFormatClassNames</code>的数组,
<code>String</code>此对象支持的任何其他格式的类名,如果没有
<code>null</code>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>extraMetadataFormatNames</code>的长度为0。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>extraMetadataFormatNames</code>
<code>extraMetadataFormatClassNames</code>都不是
<code>null</code> ,也不是相同的长度。
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="isStandardMetadataFormatSupported--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isStandardMetadataFormatSupported</h4> <pre>public boolean isStandardMetadataFormatSupported()</pre>
<div class="block">
<span>返回<code>true</code>如果标准元数据格式是由支持<code>getMetadataFormat</code> <code>getAsTree</code> <code>setFromTree</code><code>mergeTree</code></span>
<p> <span>默认实现返回<code>standardFormatSupported</code>实例变量的值。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果支持标准元数据格式。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getAsTree-java.lang.String-"><code>getAsTree(java.lang.String)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#setFromTree-java.lang.String-org.w3c.dom.Node-"><code>setFromTree(java.lang.String, org.w3c.dom.Node)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#mergeTree-java.lang.String-org.w3c.dom.Node-"><code>mergeTree(java.lang.String, org.w3c.dom.Node)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormat-java.lang.String-"><code>getMetadataFormat(java.lang.String)</code></a>
</dd>
</dl> </li>
</ul> <a name="isReadOnly--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isReadOnly</h4> <pre>public abstract boolean isReadOnly()</pre>
<div class="block">
返回
<code>true</code>如果此对象不支持
<code>mergeTree</code>
<code>setFromTree</code>
<code>reset</code>方法。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果此
<code>IIOMetadata</code>对象无法修改则为true。
</dd>
</dl> </li>
</ul> <a name="getNativeMetadataFormatName--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getNativeMetadataFormatName</h4> <pre>public <a href="../../../java/lang/String.html" title="class in java.lang">String</a> getNativeMetadataFormatName()</pre>
<div class="block">
<span>返回此插件的“本机”元数据格式的名称,通常允许以该插件处理的格式存储的元数据进行无损编码和传输。</span>
<span>如果不支持这样的格式,将返回<code>null</code></span>
<p> <span>“本机”元数据格式的结构和内容由创建此<code>IIOMetadata</code>对象的插件定义。</span> <span>简单格式的插件通常会为根创建一个虚拟节点,然后创建一系列表示各个标签,块或关键字/值对的子节点。</span> <span>插件可以选择是否记录其本机格式。</span> </p>
<p> <span>默认实现返回<code>nativeMetadataFormatName</code>实例变量的值。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
本机格式的名称,或
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getExtraMetadataFormatNames--"><code>getExtraMetadataFormatNames()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--"><code>getMetadataFormatNames()</code></a>
</dd>
</dl> </li>
</ul> <a name="getExtraMetadataFormatNames--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getExtraMetadataFormatNames</h4> <pre>public <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] getExtraMetadataFormatNames()</pre>
<div class="block">
<span>返回一个包含<code>String</code>的数组,其中包含了该插件的<code>getAsTree</code><code>mergeTree</code>方法<code>setFromTree</code>其他元数据格式的名称,而不是本机和标准格式。</span>
<span>如果没有这样的附加格式,则返回<code>null</code></span>
<p> <span>默认实现返回一个<code>extraMetadataFormatNames</code>实例变量的克隆。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>String</code>的长度至少为1的阵列
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getAsTree-java.lang.String-"><code>getAsTree(java.lang.String)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#setFromTree-java.lang.String-org.w3c.dom.Node-"><code>setFromTree(java.lang.String, org.w3c.dom.Node)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#mergeTree-java.lang.String-org.w3c.dom.Node-"><code>mergeTree(java.lang.String, org.w3c.dom.Node)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getNativeMetadataFormatName--"><code>getNativeMetadataFormatName()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--"><code>getMetadataFormatNames()</code></a>
</dd>
</dl> </li>
</ul> <a name="getMetadataFormatNames--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getMetadataFormatNames</h4> <pre>public <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] getMetadataFormatNames()</pre>
<div class="block">
<span>返回数组<code>String</code>包含的所有元数据格式的名称,包括本地和标准格式,通过此插件的认为科学<code>getAsTree</code> <code>setFromTree</code><code>mergeTree</code>方法。</span>
<span>如果没有这样的格式,则返回<code>null</code></span>
<p> <span>默认实现调用<code>getNativeMetadataFormatName</code> <code>isStandardMetadataFormatSupported</code><code>getExtraMetadataFormatNames</code>并返回合并后的结果。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>String</code>的阵列。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getNativeMetadataFormatName--"><code>getNativeMetadataFormatName()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#isStandardMetadataFormatSupported--"><code>isStandardMetadataFormatSupported()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getExtraMetadataFormatNames--"><code>getExtraMetadataFormatNames()</code></a>
</dd>
</dl> </li>
</ul> <a name="getMetadataFormat-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getMetadataFormat</h4> <pre>public <a href="../../../javax/imageio/metadata/IIOMetadataFormat.html" title="interface in javax.imageio.metadata">IIOMetadataFormat</a> getMetadataFormat(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName)</pre>
<div class="block">
<span>返回一个<code>IIOMetadataFormat</code>对象描述给定的元数据格式,或<code>null</code>如果没有可用的描述。</span>
<span>提供的名称必须是由<code>getMetadataFormatNames</code>返回的<code>getMetadataFormatNames</code> <i></i> ,本机格式名称,标准格式名称或由<code>getExtraMetadataFormatNames</code>返回的那些<code>getExtraMetadataFormatNames</code> )。</span>
<p> <span>默认实现根据全局标准元数据格式名称检查名称,如果支持该格式则返回该格式。</span> <span>否则,它会检查本机格式名称,后跟任何其他格式名称。</span> <span>如果找到匹配项,则根据<code>IIOMetadataFormat</code><code>nativeMetadataFormatClassName</code><code>extraMetadataFormatClassNames</code> <code>IIOMetadataFormat</code>类的名称,并使用其<code>getInstance</code>方法构建该类的实例。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>formatName</code> - 所需的元数据格式。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataFormat</code>对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>formatName</code>
<code>null</code>或不是插件识别的名称之一。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果与格式名称对应的类无法加载。
</dd>
</dl> </li>
</ul> <a name="getAsTree-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getAsTree</h4> <pre>public abstract <a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> getAsTree(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName)</pre>
<div class="block">
<span>根据给定元数据格式定义的约定返回一个XML DOM <code>Node</code>对象,该对象表示该对象中包含的元数据树的根。</span>
<p> <span>可以使用<code>getMetadataFormatNames</code>方法查询可用元数据格式的名称。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>formatName</code> - 所需的元数据格式。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
形成树的根的XML DOM
<code>Node</code>对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>formatName</code>
<code>null</code>或不是由
<code>getMetadataFormatNames</code>返回的名称
<code>getMetadataFormatNames</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--"><code>getMetadataFormatNames()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#setFromTree-java.lang.String-org.w3c.dom.Node-"><code>setFromTree(java.lang.String, org.w3c.dom.Node)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#mergeTree-java.lang.String-org.w3c.dom.Node-"><code>mergeTree(java.lang.String, org.w3c.dom.Node)</code></a>
</dd>
</dl> </li>
</ul> <a name="mergeTree-java.lang.String-org.w3c.dom.Node-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>mergeTree</h4> <pre>public abstract void mergeTree(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName,
<a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> root)
throws <a href="../../../javax/imageio/metadata/IIOInvalidTreeException.html" title="class in javax.imageio.metadata">IIOInvalidTreeException</a></pre>
<div class="block">
<span>从XML DOM <code>Node</code>的树中更改此<code>IIOMetadata</code>对象的内部状态,其语法由给定的元数据格式定义。</span>
<span>之前的状态仅在必要时被修改以适应给定树中存在的节点。</span>
<span>如果树结构或内容无效,将抛出<code>IIOInvalidTreeException</code></span>
<p> <span>由于树或子树可能与另一棵树合并的语义完全是格式特定的,插件作者可以以任何最适合格式的方式实现此方法,包括简单地将所有现有状态替换为给定树。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>formatName</code> - 所需的元数据格式。
</dd>
<dd>
<code>root</code> - 形成树根的XML DOM
<code>Node</code>对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果此对象是只读的。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>formatName</code>
<code>null</code>或不是由
<code>getMetadataFormatNames</code>返回的名称
<code>getMetadataFormatNames</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>root</code>
<code>null</code>
</dd>
<dd>
<code><a href="../../../javax/imageio/metadata/IIOInvalidTreeException.html" title="class in javax.imageio.metadata">IIOInvalidTreeException</a></code> - 如果无法使用给定格式的规则成功解析树。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--"><code>getMetadataFormatNames()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getAsTree-java.lang.String-"><code>getAsTree(java.lang.String)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#setFromTree-java.lang.String-org.w3c.dom.Node-"><code>setFromTree(java.lang.String, org.w3c.dom.Node)</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardChromaNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardChromaNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardChromaNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的色度信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由公用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardCompressionNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardCompressionNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardCompressionNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的压缩信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardDataNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardDataNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardDataNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的数据格式信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardDimensionNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardDimensionNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardDimensionNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的尺寸信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardDocumentNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardDocumentNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardDocumentNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的文档信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardTextNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardTextNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardTextNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的文字信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardTileNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardTileNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardTileNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的平铺信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTree--"><code>getStandardTree()</code></a>
</dd>
</dl> </li>
</ul> <a name="getStandardTransparencyNode--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardTransparencyNode</h4> <pre>protected <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardTransparencyNode()</pre>
<div class="block">
<span>返回一个<code>IIOMetadataNode</code>表示标准的透明度信息<code>javax_imageio_1.0</code>元数据格式,或<code>null</code>如果没有这样的信息是可用的。</span>
<span>该方法旨在由实用程序<code>getStandardTree</code></span>
<p> <span>默认实现返回<code>null</code></span> </p>
<p> <span>如果子类希望支持标准元数据格式,则子类应该重写此方法以生成适当的子树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>
<code>null</code>
</dd>
</dl> </li>
</ul> <a name="getStandardTree--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getStandardTree</h4> <pre>protected final <a href="../../../javax/imageio/metadata/IIOMetadataNode.html" title="class in javax.imageio.metadata">IIOMetadataNode</a> getStandardTree()</pre>
<div class="block">
<span>根据标准<code>javax_imageio_1.0</code>元数据格式的约定,返回一个表示该对象中包含的元数据的树<code>IIOMetadataNode</code>的实用方法。</span>
<p> <span>该方法调用各种<code>getStandard*Node</code>方法来提供根源于根节点子节点的每个子树。</span> <span>如果这些方法中的任何一个返回<code>null</code> ,相应的子树将被省略。</span> <span>如果所有这些都返回<code>null</code> ,则将返回由单个根节点组成的树。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>IIOMetadataNode</code>代表了
<code>javax_imageio_1.0</code>格式的元数据树的根。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardChromaNode--"><code>getStandardChromaNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardCompressionNode--"><code>getStandardCompressionNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDataNode--"><code>getStandardDataNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDimensionNode--"><code>getStandardDimensionNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardDocumentNode--"><code>getStandardDocumentNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTextNode--"><code>getStandardTextNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTileNode--"><code>getStandardTileNode()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getStandardTransparencyNode--"><code>getStandardTransparencyNode()</code></a>
</dd>
</dl> </li>
</ul> <a name="setFromTree-java.lang.String-org.w3c.dom.Node-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setFromTree</h4> <pre>public void setFromTree(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> formatName,
<a href="../../../org/w3c/dom/Node.html" title="interface in org.w3c.dom">Node</a> root)
throws <a href="../../../javax/imageio/metadata/IIOInvalidTreeException.html" title="class in javax.imageio.metadata">IIOInvalidTreeException</a></pre>
<div class="block">
<span>从XML DOM <code>Node</code>的树中设置此<code>IIOMetadata</code>对象的内部状态,其语法由给定的元数据格式定义。</span>
<span>以前的状态被丢弃。</span>
<span>如果树的结构或内容无效,则会抛出<code>IIOInvalidTreeException</code></span>
<p> <span>默认实现调用<code>reset</code>后跟<code>mergeTree(formatName, root)</code></span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>formatName</code> - 所需的元数据格式。
</dd>
<dd>
<code>root</code> - 形成树根的XML DOM
<code>Node</code>对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果此对象是只读的。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>formatName</code>
<code>null</code>或不是由
<code>getMetadataFormatNames</code>返回的名称
<code>getMetadataFormatNames</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>root</code>
<code>null</code>
</dd>
<dd>
<code><a href="../../../javax/imageio/metadata/IIOInvalidTreeException.html" title="class in javax.imageio.metadata">IIOInvalidTreeException</a></code> - 如果无法使用给定格式的规则成功解析树。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getMetadataFormatNames--"><code>getMetadataFormatNames()</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#getAsTree-java.lang.String-"><code>getAsTree(java.lang.String)</code></a>
<a href="../../../javax/imageio/metadata/IIOMetadata.html#mergeTree-java.lang.String-org.w3c.dom.Node-"><code>mergeTree(java.lang.String, org.w3c.dom.Node)</code></a>
</dd>
</dl> </li>
</ul> <a name="reset--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>reset</h4> <pre>public abstract void reset()</pre>
<div class="block">
<span>将此对象中存储的所有数据重置为默认值,通常是在构建后立即处于该对象的状态,尽管精确的语义是插件特定的。</span>
<span>请注意,有许多可能的默认值,具体取决于对象的创建方式。</span>
</div>
<dl>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果此对象是只读的。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/ImageReader.html#getStreamMetadata--"><code>ImageReader.getStreamMetadata()</code></a>
<a href="../../../javax/imageio/ImageReader.html#getImageMetadata-int-"><code>ImageReader.getImageMetadata(int)</code></a>
<a href="../../../javax/imageio/ImageWriter.html#getDefaultStreamMetadata-javax.imageio.ImageWriteParam-"><code>ImageWriter.getDefaultStreamMetadata(javax.imageio.ImageWriteParam)</code></a>
<a href="../../../javax/imageio/ImageWriter.html#getDefaultImageMetadata-javax.imageio.ImageTypeSpecifier-javax.imageio.ImageWriteParam-"><code>ImageWriter.getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam)</code></a>
</dd>
</dl> </li>
</ul> <a name="setController-javax.imageio.metadata.IIOMetadataController-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setController</h4> <pre>public void setController(<a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> controller)</pre>
<div class="block">
<span>设置<code>IIOMetadataController</code>用于在调用<code>activateController</code>方法时为该<code>IIOMetadata</code>对象提供设置,覆盖任何默认控制器。</span>
<span>如果参数为<code>null</code> ,则不会使用任何控制器,包括任何默认值。</span>
<span>要恢复默认值,请使用<code>setController(getDefaultController())</code></span>
<p> <span>默认实现将<code>controller</code>实例变量设置为提供的值。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>controller</code> - 适当的
<code>IIOMetadataController</code>
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getController--"><code>getController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--"><code>getDefaultController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--"><code>hasController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--"><code>activateController()</code></a></span>
</dd>
</dl> </li>
</ul> <a name="getController--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getController</h4> <pre>public <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> getController()</pre>
<div class="block">
<span>返回<code>IIOMetadataController</code>安装的IIOMetadataController。</span>
<span>如果有一个<code>null</code>或最近调用<code>setController</code>的参数,这可以是默认值。</span>
<p> <span>默认实现返回<code>controller</code>实例变量的值。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
目前安装的是
<code>IIOMetadataController</code> ,或
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-"><code>setController(javax.imageio.metadata.IIOMetadataController)</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--"><code>getDefaultController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--"><code>hasController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--"><code>activateController()</code></a></span>
</dd>
</dl> </li>
</ul> <a name="getDefaultController--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getDefaultController</h4> <pre>public <a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="interface in javax.imageio.metadata">IIOMetadataController</a> getDefaultController()</pre>
<div class="block">
<span>返回默认值<code>IIOMetadataController</code> ,如果有一个,不管当前安装的控制器。</span>
<span>如果没有默认控制器,返回<code>null</code></span>
<p> <span>默认实现返回<code>defaultController</code>实例变量的值。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
默认为
<code>IIOMetadataController</code> ,或
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-"><code>setController(IIOMetadataController)</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getController--"><code>getController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--"><code>hasController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--"><code>activateController()</code></a></span>
</dd>
</dl> </li>
</ul> <a name="hasController--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>hasController</h4> <pre>public boolean hasController()</pre>
<div class="block">
<span>如果为此<code>IIOMetadata</code>对象安装了控制器,则返回<code>true</code></span>
<p> <span>如果<code>getController</code>方法返回非<code>null</code>值,则默认实现将返回<code>true</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果安装了控制器。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-"><code>setController(IIOMetadataController)</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getController--"><code>getController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--"><code>getDefaultController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#activateController--"><code>activateController()</code></a></span>
</dd>
</dl> </li>
</ul> <a name="activateController--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>activateController</h4> <pre>public boolean activateController()</pre>
<div class="block">
<span>为此<code>IIOMetadata</code>对象激活<code>IIOMetadataController</code><code>IIOMetadata</code> ,并返回结果值。</span>
<span>当此方法返回<code>true</code>时,此<code>IIOMetadata</code>对象的所有值将准备好进行下一次写入操作。</span>
<span>如果返回<code>false</code> ,则此对象中的设置不会受到干扰( <i></i>用户取消操作)。</span>
<p> <span>通常控制器将提供的一个子类的用户界面的GUI <code>IIOMetadata</code>用于特定插件。</span> <span>控制器不需要GUI。</span> </p>
<p> <span>默认实现调用<code>getController</code>和电话<code>activate</code>返回的对象上,如果<code>hasController</code>回报<code>true</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果控制器正常完成。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果当前没有安装控制器。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/metadata/IIOMetadataController.html" title="javax.imageio.metadata中的接口"><code>IIOMetadataController</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#setController-javax.imageio.metadata.IIOMetadataController-"><code>setController(IIOMetadataController)</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getController--"><code>getController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#getDefaultController--"><code>getDefaultController()</code></a> <a href="../../../javax/imageio/metadata/IIOMetadata.html#hasController--"><code>hasController()</code></a></span>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>