uTools-Manuals/docs/java/javax/imageio/spi/ImageWriterSpi.html

685 lines
42 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.spi
</div>
<h2 class="title" title="Class ImageWriterSpi">Class ImageWriterSpi</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><a href="../../../javax/imageio/spi/IIOServiceProvider.html" title="class in javax.imageio.spi">javax.imageio.spi.IIOServiceProvider</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html" title="class in javax.imageio.spi">javax.imageio.spi.ImageReaderWriterSpi</a></li>
<li>
<ul class="inheritance">
<li>javax.imageio.spi.ImageWriterSpi</li>
</ul> </li>
</ul> </li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Implemented Interfaces:
</dt>
<dd>
<span><a href="../../../javax/imageio/spi/RegisterableService.html" title="javax.imageio.spi中的接口">RegisterableService</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">ImageWriterSpi</span>
extends <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html" title="class in javax.imageio.spi">ImageReaderWriterSpi</a></pre>
<div class="block">
<span>服务提供者接口SPI<code>ImageWriter</code>秒。</span>
<span>有关服务提供程序类的更多信息,请参阅<code>IIORegistry</code>类的类注释。</span>
<p> <span>每个<code>ImageWriterSpi</code>提供了与它相关联的<code>ImageWriter</code>类的几种类型的信息。</span> </p>
<p> <span>谁定义的SPI类和类的简要说明供应商的名称通过可<code>getVendorName</code> <code>getDescription</code><code>getVersion</code>方法。</span> <span>这些方法可以被国际化以提供特定于区域的输出。</span> <span>这些方法主要用于提供可用于组织弹出菜单或其他列表的简短的人类可写信息。</span> </p>
<p> <span>格式名称文件后缀以及与该服务相关联MIME类型的列表可通过的方式获得<code>getFormatNames</code> <code>getFileSuffixes</code><code>getMIMEType</code>方法。</span> <span>这些方法可以被用于识别候选<code>ImageWriter</code> S表示写入一个特定的文件或流基于手动格式选择文件命名或MIME关联。</span> </p>
<p> <span>通过<code>canEncodeImage</code>方法提供了一种更可靠的方法来确定哪些<code>ImageWriter</code>可能能够解析特定的数据流。</span> <span>此方法允许服务提供商检查实际的图像内容。</span> </p>
<p> <span>最后,可以通过调用<code>createWriterInstance</code>方法获得与该服务提供商相关<code>ImageWriter</code>类的实例。</span> <span>任何重量级的初始化(如加载本机库或创建大型表)至少应该延迟至首次调用此方法为止。</span> </p>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/imageio/spi/IIORegistry.html" title="javax.imageio.spi中的类"><code>IIORegistry</code></a> <a href="../../../javax/imageio/ImageTypeSpecifier.html" title="javax.imageio中的类"><code>ImageTypeSpecifier</code></a> <a href="../../../javax/imageio/ImageWriter.html" title="javax.imageio中的类"><code>ImageWriter</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="../../../java/lang/Class.html" title="class in java.lang"></a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#outputTypes">outputTypes</a></span></code>
<div class="block">
<code>getOutputTypes</code>返回的
<code></code>对象的数组,
<code></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/spi/ImageWriterSpi.html#readerSpiNames">readerSpiNames</a></span></code>
<div class="block">
要从
<code>getImageReaderSpiNames</code>返回的字符串数组,最初为
<code>null</code>
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../java/lang/Class.html" title="class in java.lang"></a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#STANDARD_OUTPUT_TYPE">STANDARD_OUTPUT_TYPE</a></span></code>
<div class="block">
<span><span class="deprecatedLabel">已弃用</span></span>
<div class="block">
<span><span class="deprecationComment">而不是使用此字段,直接创建等效数组<code>{ ImageOutputStream.class }</code></span></span>
</div>
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.javax.imageio.spi.ImageReaderWriterSpi">
<!-- --> </a> <h3>Fields inherited from class javax.imageio.spi.<a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html" title="class in javax.imageio.spi">ImageReaderWriterSpi</a></h3> <code><a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#extraImageMetadataFormatClassNames">extraImageMetadataFormatClassNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#extraImageMetadataFormatNames">extraImageMetadataFormatNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#extraStreamMetadataFormatClassNames">extraStreamMetadataFormatClassNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#extraStreamMetadataFormatNames">extraStreamMetadataFormatNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#MIMETypes">MIMETypes</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#names">names</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#nativeImageMetadataFormatClassName">nativeImageMetadataFormatClassName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#nativeImageMetadataFormatName">nativeImageMetadataFormatName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#nativeStreamMetadataFormatClassName">nativeStreamMetadataFormatClassName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#nativeStreamMetadataFormatName">nativeStreamMetadataFormatName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#pluginClassName">pluginClassName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#suffixes">suffixes</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#supportsStandardImageMetadataFormat">supportsStandardImageMetadataFormat</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#supportsStandardStreamMetadataFormat">supportsStandardStreamMetadataFormat</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.javax.imageio.spi.IIOServiceProvider">
<!-- --> </a> <h3>Fields inherited from class javax.imageio.spi.<a href="../../../javax/imageio/spi/IIOServiceProvider.html" title="class in javax.imageio.spi">IIOServiceProvider</a></h3> <code><a href="../../../javax/imageio/spi/IIOServiceProvider.html#vendorName">vendorName</a>, <a href="../../../javax/imageio/spi/IIOServiceProvider.html#version">version</a></code></li>
</ul> </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/spi/ImageWriterSpi.html#ImageWriterSpi--">ImageWriterSpi</a></span>()</code>
<div class="block">
构造一个空白
<code>ImageWriterSpi</code>
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code> </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#ImageWriterSpi-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-java.lang.String:A-java.lang.String-java.lang.Class:A-java.lang.String:A-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-">ImageWriterSpi</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> vendorName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> version, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] names, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] suffixes, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] MIMETypes, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> writerClassName, <a href="../../../java/lang/Class.html" title="class in java.lang"></a>[] outputTypes, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] readerSpiNames, boolean supportsStandardStreamMetadataFormat, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeStreamMetadataFormatName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeStreamMetadataFormatClassName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraStreamMetadataFormatNames, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraStreamMetadataFormatClassNames, boolean supportsStandardImageMetadataFormat, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeImageMetadataFormatName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeImageMetadataFormatClassName, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraImageMetadataFormatNames, <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraImageMetadataFormatClassNames)</code>
<div class="block">
构造具有给定值的
<code>ImageWriterSpi</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>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#canEncodeImage-javax.imageio.ImageTypeSpecifier-">canEncodeImage</a></span>(<a href="../../../javax/imageio/ImageTypeSpecifier.html" title="class in javax.imageio">ImageTypeSpecifier</a> type)</code>
<div class="block">
如果与此服务提供商
<code>ImageWriter</code>联的ImageWriter实现能够使用给定的布局对图像进行编码则返回
<code>true</code>
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#canEncodeImage-java.awt.image.RenderedImage-">canEncodeImage</a></span>(<a href="../../../java/awt/image/RenderedImage.html" title="interface in java.awt.image">RenderedImage</a> im)</code>
<div class="block">
如果与此服务提供商
<code>ImageWriter</code>联的ImageWriter实现能够对给定的
<code>RenderedImage</code>实例进行编码,则返回
<code>true</code>
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#createWriterInstance--">createWriterInstance</a></span>()</code>
<div class="block">
返回与此服务提供程序相关
<code>ImageWriter</code> ImageWriter实现的实例。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>abstract <a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#createWriterInstance-java.lang.Object-">createWriterInstance</a></span>(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> extension)</code>
<div class="block">
返回与此服务提供程序相关
<code>ImageWriter</code> ImageWriter实现的实例。
</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/spi/ImageWriterSpi.html#getImageReaderSpiNames--">getImageReaderSpiNames</a></span>()</code>
<div class="block">
返回的数组
<code>String</code>包含所有的所有的完全合格的名称小号
<code>ImageReaderSpi</code>类,可以理解由所使用的内部元数据表示
<code>ImageWriter</code>与此服务提供商相关联,或
<code>null</code>如果没有这样
<code>ImageReaders</code>指定。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code><a href="../../../java/lang/Class.html" title="class in java.lang"></a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#getOutputTypes--">getOutputTypes</a></span>()</code>
<div class="block">
返回一个
<code></code>对象的数组,
<code></code>可以使用什么类型的对象作为撰写者的
<code>setOutput</code>方法的参数。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#isFormatLossless--">isFormatLossless</a></span>()</code>
<div class="block">
返回
<code>true</code>如果该写入器输出的格式可以精确保留像素数据。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageWriterSpi.html#isOwnWriter-javax.imageio.ImageWriter-">isOwnWriter</a></span>(<a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a> writer)</code>
<div class="block">
返回
<code>true</code>如果
<code>ImageWriter</code>在传递的对象是的实例
<code>ImageWriter</code>与此服务提供者关联。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.imageio.spi.ImageReaderWriterSpi">
<!-- --> </a> <h3>Methods inherited from class javax.imageio.spi.<a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html" title="class in javax.imageio.spi">ImageReaderWriterSpi</a></h3> <code><a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getExtraImageMetadataFormatNames--">getExtraImageMetadataFormatNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getExtraStreamMetadataFormatNames--">getExtraStreamMetadataFormatNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getFileSuffixes--">getFileSuffixes</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getFormatNames--">getFormatNames</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getImageMetadataFormat-java.lang.String-">getImageMetadataFormat</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getMIMETypes--">getMIMETypes</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getNativeImageMetadataFormatName--">getNativeImageMetadataFormatName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getNativeStreamMetadataFormatName--">getNativeStreamMetadataFormatName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getPluginClassName--">getPluginClassName</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#getStreamMetadataFormat-java.lang.String-">getStreamMetadataFormat</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#isStandardImageMetadataFormatSupported--">isStandardImageMetadataFormatSupported</a>, <a href="../../../javax/imageio/spi/ImageReaderWriterSpi.html#isStandardStreamMetadataFormatSupported--">isStandardStreamMetadataFormatSupported</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.imageio.spi.IIOServiceProvider">
<!-- --> </a> <h3>Methods inherited from class javax.imageio.spi.<a href="../../../javax/imageio/spi/IIOServiceProvider.html" title="class in javax.imageio.spi">IIOServiceProvider</a></h3> <code><a href="../../../javax/imageio/spi/IIOServiceProvider.html#getDescription-java.util.Locale-">getDescription</a>, <a href="../../../javax/imageio/spi/IIOServiceProvider.html#getVendorName--">getVendorName</a>, <a href="../../../javax/imageio/spi/IIOServiceProvider.html#getVersion--">getVersion</a>, <a href="../../../javax/imageio/spi/IIOServiceProvider.html#onDeregistration-javax.imageio.spi.ServiceRegistry-java.lang.Class-">onDeregistration</a>, <a href="../../../javax/imageio/spi/IIOServiceProvider.html#onRegistration-javax.imageio.spi.ServiceRegistry-java.lang.Class-">onRegistration</a></code></li>
</ul>
<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="STANDARD_OUTPUT_TYPE">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>STANDARD_OUTPUT_TYPE</h4> <pre><a href="../../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
public static final <a href="../../../java/lang/Class.html" title="class in java.lang"></a>[] STANDARD_OUTPUT_TYPE</pre>
<div class="block">
<span><span class="deprecatedLabel">已弃用</span></span>
<span><span class="deprecationComment">而不是使用这个字段,直接创建等效的数组<code>{ ImageOutputStream.class }</code></span></span>
</div>
<div class="block">
一个单元素数组,最初包含
<code>ImageOutputStream.class</code> ,从
<code>getOutputTypes</code>返回。
</div> </li>
</ul> <a name="outputTypes">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>outputTypes</h4> <pre>protected <a href="../../../java/lang/Class.html" title="class in java.lang"></a>[] outputTypes</pre>
<div class="block">
<code>getOutputTypes</code>返回的
<code></code>对象的数组,
<code></code>
<code>null</code>
</div> </li>
</ul> <a name="readerSpiNames">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>readerSpiNames</h4> <pre>protected <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] readerSpiNames</pre>
<div class="block">
要从
<code>getImageReaderSpiNames</code>返回的字符串数组,最初为
<code>null</code>
</div> </li>
</ul> </li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="ImageWriterSpi--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>ImageWriterSpi</h4> <pre>protected ImageWriterSpi()</pre>
<div class="block">
<span>构造一个空白<code>ImageWriterSpi</code></span>
<span>初始化实例变量和/或覆盖方法实现的子类是为了提供所有方法的工作版本。</span>
</div> </li>
</ul> <a name="ImageWriterSpi-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-java.lang.String:A-java.lang.String-java.lang.Class:A-java.lang.String:A-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-boolean-java.lang.String-java.lang.String-java.lang.String:A-java.lang.String:A-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>ImageWriterSpi</h4> <pre>public ImageWriterSpi(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> vendorName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> version,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] names,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] suffixes,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] MIMETypes,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> writerClassName,
<a href="../../../java/lang/Class.html" title="class in java.lang"></a>[] outputTypes,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] readerSpiNames,
boolean supportsStandardStreamMetadataFormat,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeStreamMetadataFormatName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeStreamMetadataFormatClassName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraStreamMetadataFormatNames,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraStreamMetadataFormatClassNames,
boolean supportsStandardImageMetadataFormat,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeImageMetadataFormatName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> nativeImageMetadataFormatClassName,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraImageMetadataFormatNames,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] extraImageMetadataFormatClassNames)</pre>
<div class="block">
构造一个给定值的
<code>ImageWriterSpi</code>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>vendorName</code> - 供应商名称,非
<code>null</code>
<code>String</code>
</dd>
<dd>
<code>version</code> - 版本标识符,非
<code>null</code>
<code>String</code>
</dd>
<dd>
<span><code>names</code> -非<code>null</code>阵列的<code>String</code>指示格式名称。</span>
<span>必须至少有一个条目。</span>
</dd>
<dd>
<span><code>suffixes</code> -的阵列<code>String</code>指示常用文件后缀。</span>
<span>如果没有定义后缀,则应提供<code>null</code></span>
<span>长度为0的数组将被归一<code>null</code></span>
</dd>
<dd>
<span><code>MIMETypes</code> -的阵列<code>String</code>指示格式的MIME类型。</span>
<span>如果未定义任何后缀,则应提供<code>null</code></span>
<span>长度为0的数组将被归一<code>null</code></span>
</dd>
<dd>
<code>writerClassName</code> - 相关联的
<code>ImageWriterSpi</code>类的完全限定名称,作为非
<code>null</code>
<code>String</code>
</dd>
<dd>
<code>outputTypes</code> - 长度至少为1的
<code></code>对象的数组,
<code></code>合法的输出类型。
</dd>
<dd>
<span><code>readerSpiNames</code> - 数组<code>String</code>的长度至少为1命名所有关联的<code>ImageReader</code> s或<code>null</code></span>
<span>长度为0的数组被归一<code>null</code></span>
</dd>
<dd>
<code>supportsStandardStreamMetadataFormat</code> -一个
<code>boolean</code> ,指示流元数据对象是否可使用由标准元数据格式描述的树。
</dd>
<dd>
<code>nativeStreamMetadataFormatName</code> - a
<code>String</code>
<code>null</code> ,将从
<code>getNativeStreamMetadataFormatName</code>返回。
</dd>
<dd>
<code>nativeStreamMetadataFormatClassName</code> - a
<code>String</code>
<code>null</code> ,用于实例化要从
<code>getNativeStreamMetadataFormat</code>返回的元数据格式对象。
</dd>
<dd>
<span><code>extraStreamMetadataFormatNames</code> - 要从<code>getExtraStreamMetadataFormatNames</code>返回的<code>String</code> s或<code>null</code>的数组。</span>
<span>长度为0的数组被归一<code>null</code></span>
</dd>
<dd>
<span><code>extraStreamMetadataFormatClassNames</code> - 用于实例化要从<code>getStreamMetadataFormat</code>返回的元数据格式对象的<code>String</code> s或<code>null</code>的数组。</span>
<span>长度为0的数组被归一<code>null</code></span>
</dd>
<dd>
<code>supportsStandardImageMetadataFormat</code> -
<code>boolean</code>图像元数据对象是否可以使用标准元数据格式描述的树的boolean。
</dd>
<dd>
<code>nativeImageMetadataFormatName</code> - a
<code>String</code>
<code>null</code> ,将从
<code>getNativeImageMetadataFormatName</code>返回。
</dd>
<dd>
<code>nativeImageMetadataFormatClassName</code> - a
<code>String</code>
<code>null</code> ,用于实例化要从
<code>getNativeImageMetadataFormat</code>返回的元数据格式对象。
</dd>
<dd>
<span><code>extraImageMetadataFormatNames</code> -的阵列<code>String</code>从返回小号<code>getExtraImageMetadataFormatNames</code></span>
<span>长度为0的数组被归一<code>null</code></span>
</dd>
<dd>
<span><code>extraImageMetadataFormatClassNames</code> - 用于实例化要从<code>getImageMetadataFormat</code>返回的元数据格式对象的<code>String</code> s或<code>null</code>的数组。</span>
<span>长度为0的数组被归一<code>null</code></span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>vendorName</code>
<code>null</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>version</code>
<code>null</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>names</code>
<code>null</code>或长度为0。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>writerClassName</code>
<code>null</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>outputTypes</code>
<code>null</code>或长度为0。
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="isFormatLossless--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isFormatLossless</h4> <pre>public boolean isFormatLossless()</pre>
<div class="block">
<span>返回<code>true</code>如果此写入器输出的格式可精确保留像素数据。</span>
<span>默认实现返回<code>true</code></span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果格式保持了完整的像素精度。
</dd>
</dl> </li>
</ul> <a name="getOutputTypes--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getOutputTypes</h4> <pre>public <a href="../../../java/lang/Class.html" title="class in java.lang"></a>[] getOutputTypes()</pre>
<div class="block">
<span>返回一个<code></code>对象的数组, <code></code>可以将什么类型的对象用作作者的<code>setOutput</code>方法的参数。</span>
<p> <span>对于大多数作家,其中仅输出到<code>ImageOutputStream</code> ,含有单元素数组<code>ImageOutputStream.class</code>应返回。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code></code>个长度至少为1的
<code></code>对象的非
<code>null</code>数组。
</dd>
</dl> </li>
</ul> <a name="canEncodeImage-javax.imageio.ImageTypeSpecifier-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>canEncodeImage</h4> <pre>public abstract boolean canEncodeImage(<a href="../../../javax/imageio/ImageTypeSpecifier.html" title="class in javax.imageio">ImageTypeSpecifier</a> type)</pre>
<div class="block">
<span>如果与此服务提供商<code>ImageWriter</code>联的ImageWriter实现能够对具有给定布局的图像进行编码则返回<code>true</code></span>
<span>布局( <i></i> ,图像的<code>SampleModel</code><code>ColorModel</code> )由<code>ImageTypeSpecifier</code>对象描述。</span>
<p> <span>返回值为<code>true</code>不是成功编码的绝对保证;</span> <span>编码过程可能由于诸如I / O错误不一致或畸形数据结构等因素而产生错误。意图是对图像的基本结构进行合理检查以便确定其是否在范围的编码格式。</span> <span>例如,只能编码灰度的格式的服务提供商将返回<code>false</code>如果交给RGB <code>BufferedImage</code></span> <span>类似地可以编码8位RGB图像的格式的服务提供商可能拒绝对具有相关联的Alpha通道的图像进行编码。</span> </p>
<p> <span>不同的<code>ImageWriter</code> s因此服务提供商可能会选择或多或少严格。</span> <span>例如,他们可能接受具有预乘法α的图像,即使它们必须被分割出每个像素,以某种精度损失,以便被存储。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>type</code> - 一个
<code>ImageTypeSpecifier</code>要写入的图像的布局的ImageTypeSpecifier。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</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>type</code>
<code>null</code>
</dd>
</dl> </li>
</ul> <a name="canEncodeImage-java.awt.image.RenderedImage-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>canEncodeImage</h4> <pre>public boolean canEncodeImage(<a href="../../../java/awt/image/RenderedImage.html" title="interface in java.awt.image">RenderedImage</a> im)</pre>
<div class="block">
<span>如果与此服务提供商<code>ImageWriter</code>联的ImageWriter实现能够对给定的<code>RenderedImage</code>实例进行编码,则返回<code>true</code></span>
<span>请注意这包括java.awt.image.BufferedImage的<code>java.awt.image.BufferedImage</code></span>
<p> <span>有关此方法的语义的<code>canEncodeImage(ImageTypeSpecifier)</code> 请参阅canEncodeImage(ImageTypeSpecifier)的<code>canEncodeImage(ImageTypeSpecifier)</code></span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>im</code> - 要编码的
<code>RenderedImage</code>的实例。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</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>im</code>
<code>null</code>
</dd>
</dl> </li>
</ul> <a name="createWriterInstance--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>createWriterInstance</h4> <pre>public <a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a> createWriterInstance()
throws <a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>返回与该服务提供商相关<code>ImageWriter</code> ImageWriter实现的实例。</span>
<span>返回的对象最初将处于初始状态,就像其<code>reset</code>方法已被调用一样。</span>
<p> <span>默认实现只是返回<code>createWriterInstance(null)</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>ImageWriter</code>例子。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果在加载期间发生错误,或者写入器类的初始化,或者在写入器对象的实例化或初始化期间发生错误。
</dd>
</dl> </li>
</ul> <a name="createWriterInstance-java.lang.Object-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>createWriterInstance</h4> <pre>public abstract <a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a> createWriterInstance(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> extension)
throws <a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>返回与该服务提供商相关<code>ImageWriter</code> ImageWriter实现的实例。</span>
<span>返回的对象最初将处于初始状态,就好像其<code>reset</code>方法已被调用一样。</span>
<p> <span>一个<code>Object</code>可以被提供给该插件在施工时间。</span> <span>对象的性质是完全插件具体的。</span> </p>
<p> <span>通常,插件将使用诸如<code>return new MyImageWriter(this)</code>之类的代码实现此方法。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>extension</code> - 插件特定的扩展对象,可以是
<code>null</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>ImageWriter</code>实例。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果尝试实例化写入程序失败。
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>ImageWriter</code>的构造函数抛出一个
<code>IllegalArgumentException</code>来表示扩展对象不合适。
</dd>
</dl> </li>
</ul> <a name="isOwnWriter-javax.imageio.ImageWriter-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isOwnWriter</h4> <pre>public boolean isOwnWriter(<a href="../../../javax/imageio/ImageWriter.html" title="class in javax.imageio">ImageWriter</a> writer)</pre>
<div class="block">
如果
<code>true</code>
<code>ImageWriter</code>对象是与此服务提供商
<code>ImageWriter</code> ImageWriter的实例
<code>ImageWriter</code> true。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>writer</code> - 一个
<code>ImageWriter</code>实例。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果
<code>writer</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>writer</code>
<code>null</code>
</dd>
</dl> </li>
</ul> <a name="getImageReaderSpiNames--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>getImageReaderSpiNames</h4> <pre>public <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] getImageReaderSpiNames()</pre>
<div class="block">
<span>返回的数组<code>String</code>包含所有的所有的完全合格的名称小号<code>ImageReaderSpi</code>类,可以理解由所使用的内部元数据表示<code>ImageWriter</code>与此服务提供商相关联,或<code>null</code>如果没有这样<code>ImageReaders</code>指定。</span>
<span>如果返回非<code>null</code>值,它必须具有非零长度。</span>
<p> <span>阵列中的第一个项目必须是“首选”阅读器的服务提供商的名称,因为它将用于实例化由<code>ImageReader</code>返回的<code>ImageIO.getImageReader(ImageWriter)</code></span> </p>
<p> <span>该机制可用于获得在<code>ImageReaders</code>理解的结构中将产生非像素元数据(见<code>IIOExtraDataInfo</code> )的<code>ImageWriter</code></span> <span>通过读取图像并从使用此方法获得的<code>ImageReaders</code>获取此数据,并将其传递给<code>ImageWriter</code> ,客户端程序可以读取图像,以某种方式进行修改,并将其写回保留所有元数据,而不需要了解元数据的内部结构,甚至了解图像格式。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
长度为
<code>String</code> s的数组至少包含1个
<code>ImageReaderSpi</code> s或
<code>null</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/ImageIO.html#getImageReader-javax.imageio.ImageWriter-"><code>ImageIO.getImageReader(ImageWriter)</code></a>,
<a href="../../../javax/imageio/spi/ImageReaderSpi.html#getImageWriterSpiNames--"><code>ImageReaderSpi.getImageWriterSpiNames()</code></a>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>