226 lines
13 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.print
</div>
<h2 class="title" title="Interface Doc">Interface Doc</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
所有已知实现类:
</dt>
<dd>
<span><a href="../../javax/print/SimpleDoc.html" title="javax.print中的类">SimpleDoc</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public interface <span class="typeNameLabel">Doc</span></pre>
<div class="block">
<span>Interface Doc指定为打印作业提供一张打印数据的对象的界面。</span>
<span>“Doc”是一个简短易懂的术语意思是“一张打印数据”。</span>
<span>客户端将打印作业传递给实现接口Doc的对象并且打印作业调用该对象上的方法以获取打印数据。</span>
<span>Doc界面允许打印作业</span>
<ul>
<li> <span>确定打印数据可用的格式或“doc flavor”类别<a href="../../javax/print/DocFlavor.html" title="javax.print中的类"><code>DocFlavor</code></a> )。</span> <span>doc文件指定打印数据格式MIME类型和打印数据来自的对象的表示类。</span> <p></p></li>
<li> <span>获取打印数据表示对象它是doc flavor表示类的一个实例。</span> <span>打印作业然后可以从表示对象获取实际的打印数据。</span> <p></p></li>
<li> <span>获取指定文档的其他特征的打印属性,或指定要应用于文档的处理指令。</span> <span>打印属性在包装<a href="../../javax/print/attribute/package-summary.html"><code>javax.print.attribute</code></a>中定义。</span> <span>该文档返回存储在<code>javax.print.attribute.DocAttributeSet</code>中的打印<a href="../../javax/print/attribute/DocAttributeSet.html" title="javax.print.attribute中的接口">属性</a></span> </li>
</ul>
<p> <span>在每次调用该方法时允许始终在界面Doc的实现中的每个方法返回相同的对象。</span> <span>这对打印作业或打印数据表示对象在打电话获取打印数据时消耗打印数据(例如作为流的打印数据表示对象)的文档对象的其他调用者有影响。</span> <span>一旦打印作业调用了<a href="../../javax/print/Doc.html#getPrintData--"><code>getPrintData()</code></a>并获取了流,任何进一步的调用<a href="../../javax/print/Doc.html#getPrintData--"><code>getPrintData()</code></a>将返回相同的流对象,读取可能已经在进行中, <i>而不是</i>从头开始重新读取打印数据的新流对象。</span> <span>指定文档对象以这种方式行事简化了doc对象的实现并且是有理由的因为特定的文档仅将打印数据传送到一个打印作业而不是将数据传送到几个不同的打印作业。</span> <span>(要将相同的打印数据传送到几个不同的打印作业,您必须在同一打印数据源之上创建多个不同的文档对象。)</span> </p>
<p> <span>Interface Doc提供了相当的实现灵活性。</span> <span>当构建文档对象时,打印数据可能已经存在。</span> <span>在这种情况下,文档方法返回的对象可以提供给文档的构造函数,提前存储在文档中,并在调用时简单地返回。</span> <span>或者,当构建文档对象时,打印数据可能不存在。</span> <span>在这种情况下,文档对象可能只提供打印作业调用打印数据表示对象(和/或打印数据)(打印作业调用<a href="../../javax/print/Doc.html#getPrintData--"><code>getPrintData()</code></a>方法时)的“ <a href="../../javax/print/Doc.html#getPrintData--">惰性”</a>实现。</span> </p>
<p> <span>可能同时访问同一文档的客户端线程数量没有限制。</span> <span>因此界面Doc的所有实现都必须设计为多线程安全。</span> </p>
<p> <span>但是只有一个消费者可以从Doc获得打印数据。</span> </p>
<p> <span>如果作为流从客户端获取打印数据则通过调用Doc的<code>getReaderForText()</code><code>getStreamForBytes()</code>方法或者由于打印数据源已经是InputStream或Reader打印服务应始终在所有作业完成条件下关闭客户端的这些流。</span> <span>有以下警告。</span> <span>如果打印数据本身是流,则服务将始终关闭。</span> <span>如果打印数据是可以作为流被请求的东西,则如果服务在终止之前已经获得流,则该服务将仅关闭该流。</span> <span>也就是说,只是因为打印服务可能请求数据,因为流并不意味着它将会依赖服务关闭它们的影响,只有响应于服务的请求才能创建这样的流。</span> </p>
<p></p>
<hr/>
</div> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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>
</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><a href="../../javax/print/attribute/DocAttributeSet.html" title="interface in javax.print.attribute">DocAttributeSet</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/print/Doc.html#getAttributes--">getAttributes</a></span>()</code>
<div class="block">
获取此文档对象的打印属性集。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="../../javax/print/DocFlavor.html" title="class in javax.print">DocFlavor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/print/Doc.html#getDocFlavor--">getDocFlavor</a></span>()</code>
<div class="block">
确定此文档对象将提供其打印数据的文档风格。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/print/Doc.html#getPrintData--">getPrintData</a></span>()</code>
<div class="block">
以与支持的文档风格相对应的格式获取包含此文档对象的打印数据的打印数据表示对象。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../java/io/Reader.html" title="class in java.io">Reader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/print/Doc.html#getReaderForText--">getReaderForText</a></span>()</code>
<div class="block">
获取从该文档中提取字符打印数据的读取器。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code><a href="../../java/io/InputStream.html" title="class in java.io">InputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/print/Doc.html#getStreamForBytes--">getStreamForBytes</a></span>()</code>
<div class="block">
获取从该文档中提取字节打印数据的输入流。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getDocFlavor--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getDocFlavor</h4> <pre><a href="../../javax/print/DocFlavor.html" title="class in javax.print">DocFlavor</a> getDocFlavor()</pre>
<div class="block">
确定此文档对象将提供其打印数据的文档风格。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
Doc味道。
</dd>
</dl> </li>
</ul> <a name="getPrintData--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getPrintData</h4> <pre><a href="../../java/lang/Object.html" title="class in java.lang">Object</a> getPrintData()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>以与支持的文档风格相对应的格式获取包含此文档对象的打印数据的打印数据表示对象。</span>
<span><code>getPrintData()</code>方法返回名称由<code><a href="../../javax/print/Doc.html#getDocFlavor--"><code>getDocFlavor()</code></a>.<a href="../../javax/print/DocFlavor.html#getRepresentationClassName--"><code>getRepresentationClassName()</code></a></code>给出的表示类的实例返回值可以从类Object转换为该表示类。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
打印数据表示对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果表示类是流并在构建流时出现I / O错误则抛出。
</dd>
</dl> </li>
</ul> <a name="getAttributes--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getAttributes</h4> <pre><a href="../../javax/print/attribute/DocAttributeSet.html" title="interface in javax.print.attribute">DocAttributeSet</a> getAttributes()</pre>
<div class="block">
<span>获取此文档对象的打印属性集。</span>
<span>如果返回的属性集包含特定属性<i>X</i>的实例<i></i>打印机必须使用该文档的属性值,覆盖作业属性集中属性<i>X的</i>任何值。</span>
<span>如果返回的属性集不包含特定属性<i>X</i>的实例或者如果返回null则打印机必须查看作业的属性集以获取属性<i>X</i>的值<i></i>如果没有找到,则打印机必须使用实现 -依赖默认值。</span>
<span>返回的属性集是不可修改的。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
此文档的不可修改的打印属性集或null可从作业的属性集获取所有属性值。
</dd>
</dl> </li>
</ul> <a name="getReaderForText--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getReaderForText</h4> <pre><a href="../../java/io/Reader.html" title="class in java.io">Reader</a> getReaderForText()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>获取从该文档中提取字符打印数据的读取器。</span>
<span>如果DocFlavor具有以下打印数据表示类之一则需要Doc实现来支持此方法否则返回null</span>
<ul>
<li> <span>char []</span> </li>
<li> <span>java.lang.String</span> </li>
<li> <span>java.io.Reader</span> </li>
</ul>
<span>文档的打印数据表示对象用于构造并返回读取器,以从打印数据表示对象读取作为字符流的打印数据。</span>
<span>然而,如果打印数据表示对象本身是读取器,则简单地返回打印数据表示对象。</span>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>用于阅读此文档中的打印数据字符的阅读器。</span>
<span>如果由于此文档不符合上述条件而无法提供读者则返回null。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 创建阅读器时发生I / O错误时抛出。
</dd>
</dl> </li>
</ul> <a name="getStreamForBytes--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>getStreamForBytes</h4> <pre><a href="../../java/io/InputStream.html" title="class in java.io">InputStream</a> getStreamForBytes()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>获取从该文档中提取字节打印数据的输入流。</span>
<span>如果DocFlavor具有以下打印数据表示类之一则需要Doc实现来支持此方法否则返回null</span>
<ul>
<li> <span>字节[]</span> </li>
<li> <span>java.io.InputStream</span> </li>
</ul>
<span>获得该文档的打印数据表示对象,然后创建并返回用于从打印数据表示对象读取打印数据作为字节流的输入流。</span>
<span>然而,如果打印数据表示对象本身是输入流,则简单地返回打印数据表示对象。</span>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>用于从该文档读取打印数据字节的输入流。</span>
<span>如果由于此文档不符合上述条件而无法提供输入流则返回null。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 创建输入流时出现I / O错误时抛出。
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>