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

421 lines
21 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 ImageOutputStreamSpi">Class ImageOutputStreamSpi</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>javax.imageio.spi.ImageOutputStreamSpi</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">ImageOutputStreamSpi</span>
extends <a href="../../../javax/imageio/spi/IIOServiceProvider.html" title="class in javax.imageio.spi">IIOServiceProvider</a></pre>
<div class="block">
<span>服务提供者接口SPI<code>ImageOutputStream</code>秒。</span>
<span>有关服务提供商界面的更多信息,请参阅<code>IIORegistry</code>类的类注释。</span>
<p> <span>该接口允许任意对象由ImageOutputStream的<code>ImageOutputStream</code> “包装”。</span> <span>例如,特定的<code>ImageOutputStreamSpi</code>可能允许使用通用的<code>OutputStream</code>作为目的地;</span> <span>另一个可能输出到一个<code>File</code>或一个设备,如串口。</span> </p>
<p> <span>通过将<code>ImageOutputStream</code> s创建为可插拔服务可以在不更改API的情况下处理未来的输出目的地。</span> <span>此外ImageOutputStream的<code>ImageOutputStream</code> (例如,特定平台的本机实现)可以由应用程序透明地安装和使用。</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/stream/ImageOutputStream.html" title="javax.imageio.stream中的接口"><code>ImageOutputStream</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>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#outputClass">outputClass</a></span></code>
<div class="block">
一个
<code></code>对象,指示
<code>createInputStreamInstance</code>方法使用的合法对象类型。
</div> </td>
</tr>
</tbody>
</table>
<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/ImageOutputStreamSpi.html#ImageOutputStreamSpi--">ImageOutputStreamSpi</a></span>()</code>
<div class="block">
构造一个空白
<code>ImageOutputStreamSpi</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/ImageOutputStreamSpi.html#ImageOutputStreamSpi-java.lang.String-java.lang.String-java.lang.Class-">ImageOutputStreamSpi</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/Class.html" title="class in java.lang"></a>&lt;?&gt; outputClass)</code>
<div class="block">
构造具有给定值的
<code>ImageOutputStreamSpi</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/spi/ImageOutputStreamSpi.html#canUseCacheFile--">canUseCacheFile</a></span>()</code>
<div class="block">
返回
<code>true</code>如果
<code>ImageOutputStream</code>与此服务提供者关联实现可选择使用缓存
<code>File</code> ,以提高性能和/或内存占用。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="../../../javax/imageio/stream/ImageOutputStream.html" title="interface in javax.imageio.stream">ImageOutputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#createOutputStreamInstance-java.lang.Object-">createOutputStreamInstance</a></span>(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> output)</code>
<div class="block">
返回与此服务提供商
<code>ImageOutputStream</code> ImageOutputStream实现的实例。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>abstract <a href="../../../javax/imageio/stream/ImageOutputStream.html" title="interface in javax.imageio.stream">ImageOutputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#createOutputStreamInstance-java.lang.Object-boolean-java.io.File-">createOutputStreamInstance</a></span>(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> output, boolean useCache, <a href="../../../java/io/File.html" title="class in java.io">File</a> cacheDir)</code>
<div class="block">
返回与此服务提供商
<code>ImageOutputStream</code> ImageOutputStream实现的实例。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../../java/lang/Class.html" title="class in java.lang"></a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#getOutputClass--">getOutputClass</a></span>()</code>
<div class="block">
返回一个
<code></code>对象,表示必须由输出目的地实现的类或接口类型,以便通过
<code>createOutputStreamInstance</code>方法“包装”在
<code>ImageOutputStream</code>中。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#needsCacheFile--">needsCacheFile</a></span>()</code>
<div class="block">
返回
<code>true</code>如果
<code>ImageOutputStream</code>与此服务提供相关的实施需要使用一个缓存
<code>File</code>
</div> </td>
</tr>
</tbody>
</table>
<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="outputClass">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>outputClass</h4> <pre>protected <a href="../../../java/lang/Class.html" title="class in java.lang"></a>&lt;?&gt; outputClass</pre>
<div class="block">
一个
<code></code>对象,指示
<code>createInputStreamInstance</code>方法使用的合法对象类型。
</div> </li>
</ul> </li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="ImageOutputStreamSpi--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>ImageOutputStreamSpi</h4> <pre>protected ImageOutputStreamSpi()</pre>
<div class="block">
<span>构造一个空白<code>ImageOutputStreamSpi</code></span>
<span>初始化实例变量和/或覆盖方法实现的子类是为了提供所有方法的工作版本。</span>
</div> </li>
</ul> <a name="ImageOutputStreamSpi-java.lang.String-java.lang.String-java.lang.Class-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>ImageOutputStreamSpi</h4> <pre>public ImageOutputStreamSpi(<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/Class.html" title="class in java.lang"></a>&lt;?&gt; outputClass)</pre>
<div class="block">
构造具有给定值的
<code>ImageOutputStreamSpi</code>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>vendorName</code> - 供应商名称。
</dd>
<dd>
<code>version</code> - 版本标识符。
</dd>
<dd>
<code>outputClass</code> - 一个
<code></code>对象,指示
<code>createOutputStreamInstance</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>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>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getOutputClass--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getOutputClass</h4> <pre>public <a href="../../../java/lang/Class.html" title="class in java.lang"></a>&lt;?&gt; getOutputClass()</pre>
<div class="block">
<span>返回一个<code></code>对象,表示必须由输出目的地实现的类或接口类型,以便通过<code>createOutputStreamInstance</code>方法“包装”在<code>ImageOutputStream</code>中。</span>
<p> <span>典型的返回值可能包括<code>OutputStream.class</code><code>File.class</code> ,但可以使用任何类。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code></code>变量。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#createOutputStreamInstance-java.lang.Object-boolean-java.io.File-"><code>createOutputStreamInstance(Object, boolean, File)</code></a>
</dd>
</dl> </li>
</ul> <a name="canUseCacheFile--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>canUseCacheFile</h4> <pre>public boolean canUseCacheFile()</pre>
<div class="block">
<span>返回<code>true</code>如果<code>ImageOutputStream</code>与此服务提供者关联实现可选择使用缓存<code>File</code> ,以提高性能和/或内存占用。</span>
<span>如果<code>false</code> ,该值<code>cacheFile</code>参数<code>createOutputStreamInstance</code>将被忽略。</span>
<p> <span>默认实现返回<code>false</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果由该服务提供商创建的输出流可以使用缓存文件。
</dd>
</dl> </li>
</ul> <a name="needsCacheFile--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>needsCacheFile</h4> <pre>public boolean needsCacheFile()</pre>
<div class="block">
<span>返回<code>true</code>如果<code>ImageOutputStream</code>与此服务提供相关的实施需要使用一个缓存<code>File</code></span>
<p> <span>默认实现返回<code>false</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果此服务提供商创建的输出流需要缓存文件。
</dd>
</dl> </li>
</ul> <a name="createOutputStreamInstance-java.lang.Object-boolean-java.io.File-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>createOutputStreamInstance</h4> <pre>public abstract <a href="../../../javax/imageio/stream/ImageOutputStream.html" title="interface in javax.imageio.stream">ImageOutputStream</a> createOutputStreamInstance(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> output,
boolean useCache,
<a href="../../../java/io/File.html" title="class in java.io">File</a> cacheDir)
throws <a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>返回与此服务提供商<code>ImageOutputStream</code> ImageOutputStream实现的实例。</span>
<span>如果使用缓存文件是可选的,则将<code>useCache</code> useCache参数。</span>
<span>当需要高速缓存,或不适用,价值<code>useCache</code>将被忽略。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>output</code> -通过返回的类类型的对象
<code>getOutputClass</code>
</dd>
<dd>
<code>useCache</code> - 一个
<code>boolean</code>指示是否应该使用缓存文件,如果是可选的。
</dd>
<dd>
<code>cacheDir</code> - 一个
<code>File</code>指示应该创建高速缓存文件的位置,或者使用
<code>null</code>来使用系统目录。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>ImageOutputStream</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>output</code>不是正确类的实例,或者是
<code>null</code>
</dd>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果需要缓存文件,但
<code>cacheDir</code>不是
<code>null</code>并且不是目录。
</dd>
<dd>
<code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果需要缓存文件但无法创建。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#getOutputClass--"><code>getOutputClass()</code></a>
</dd>
</dl> </li>
</ul> <a name="createOutputStreamInstance-java.lang.Object-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>createOutputStreamInstance</h4> <pre>public <a href="../../../javax/imageio/stream/ImageOutputStream.html" title="interface in javax.imageio.stream">ImageOutputStream</a> createOutputStreamInstance(<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a> output)
throws <a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>返回与此服务提供程序相关<code>ImageOutputStream</code> ImageOutputStream实现的实例。</span>
<span>如果需要,系统相关的默认临时文件目录中将创建缓存文件。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>output</code> -通过返回的类类型的对象
<code>getOutputClass</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一个
<code>ImageOutputStream</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>output</code>不是正确类的实例,或者是
<code>null</code>
</dd>
<dd>
<code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果需要缓存文件但无法创建。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/imageio/spi/ImageOutputStreamSpi.html#getOutputClass--"><code>getOutputClass()</code></a>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>