mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-04 15:52:45 +08:00
307 lines
16 KiB
HTML
307 lines
16 KiB
HTML
<div class="header">
|
||
<h1 class="title" title="Package">Package javax.print</h1>
|
||
<div class="docSummary">
|
||
<div class="block">
|
||
提供Java
|
||
<sup><font size="-2">TM</font></sup> Print Service API的主要类和接口。
|
||
</div>
|
||
</div>
|
||
<p>See: <a href="#package.description">描述</a></p>
|
||
</div><div class="contentContainer">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Interface Summary table, listing interfaces, and an explanation">
|
||
<caption>
|
||
<span>接口摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">接口</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/AttributeException.html" title="interface in javax.print">AttributeException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>Interface AttributeException是一个mixin接口, <a href="../../javax/print/PrintException.html" title="javax.print中的类"><code>PrintException</code></a>可以实现一个子类来报告一个特定Print Service实例不支持的一个或多个打印属性的错误条件。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/CancelablePrintJob.html" title="interface in javax.print">CancelablePrintJob</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
此接口由打印应用程序用于取消打印作业。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/Doc.html" title="interface in javax.print">Doc</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
Interface Doc指定为打印作业提供一张打印数据的对象的界面。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocPrintJob.html" title="interface in javax.print">DocPrintJob</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
此接口表示可以使用一组作业属性打印指定文档的打印作业。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/FlavorException.html" title="interface in javax.print">FlavorException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>接口FlavorException是一个mixin接口, <a href="../../javax/print/PrintException.html" title="javax.print中的类"><code>PrintException</code></a>可以实现一个子类来报告涉及到一个文档风格或风格(类别<a href="../../javax/print/DocFlavor.html" title="javax.print中的类"><code>DocFlavor</code></a> )的错误状态。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/MultiDoc.html" title="interface in javax.print">MultiDoc</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
界面MultiDoc指定为打印作业提供多个打印数据的对象的接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/MultiDocPrintJob.html" title="interface in javax.print">MultiDocPrintJob</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
从MultiDocPrintService获取,MultiDocPrintJob可以将指定的文档集合打印为具有一组作业属性的单个打印作业。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/MultiDocPrintService.html" title="interface in javax.print">MultiDocPrintService</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
Interface MultiPrintService是MultiDocPrintJob的工厂。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/PrintService.html" title="interface in javax.print">PrintService</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
Interface PrintService是DocPrintJob的工厂。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/URIException.html" title="interface in javax.print">URIException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>接口URIException是一个mixin接口, <a href="../../javax/print/PrintException.html" title="javax.print中的类"><code>PrintException</code></a>可以实现一个子类来报告涉及URI地址的错误条件。</span>
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Class Summary table, listing classes, and an explanation">
|
||
<caption>
|
||
<span>类摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">类</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.html" title="class in javax.print">DocFlavor</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>类<code>DocFlavor</code>封装了一个对象,它指定在其中的打印数据被提供给一个格式<a href="../../javax/print/DocPrintJob.html" title="javax.print中的接口"><code>DocPrintJob</code></a> 。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.BYTE_ARRAY.html" title="class in javax.print">DocFlavor.BYTE_ARRAY</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
DocFlavor.BYTE_ARRAY类提供了预定义的静态常量DocFlavor对象,例如使用字节数组(
|
||
<code>byte[]</code> )作为打印数据表示类的doc风格。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.CHAR_ARRAY.html" title="class in javax.print">DocFlavor.CHAR_ARRAY</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
DocFlavor.CHAR_ARRAY类提供了预定义的静态常量DocFlavor对象,例如使用字符数组(
|
||
<code>char[]</code> )作为打印数据表示类的doc风格。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.INPUT_STREAM.html" title="class in javax.print">DocFlavor.INPUT_STREAM</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>DocFlavor.INPUT_STREAM类提供了预定义的静态常量DocFlavor对象,例如使用字节流( <a href="../../java/io/InputStream.html" title="java.io中的类"><code>java.io.InputStream</code></a> )作为打印数据表示类的doc风格。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.READER.html" title="class in javax.print">DocFlavor.READER</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>DocFlavor.READER类提供了预定义的静态常量DocFlavor对象,例如使用字符流( <a href="../../java/io/Reader.html" title="java.io中的类"><code>java.io.Reader</code></a> )作为打印数据表示类的doc风格。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.SERVICE_FORMATTED.html" title="class in javax.print">DocFlavor.SERVICE_FORMATTED</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
DocFlavor.SERVICE_FORMATTED类提供了预定义的静态常量DocFlavor对象,例如用于服务格式化打印数据的doc风格。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.STRING.html" title="class in javax.print">DocFlavor.STRING</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>DocFlavor.STRING类提供了预定义的静态常量DocFlavor对象,例如使用字符串( <a href="../../java/lang/String.html" title="java.lang中的类"><code>java.lang.String</code></a> )作为打印数据表示类的doc风格。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/DocFlavor.URL.html" title="class in javax.print">DocFlavor.URL</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
DocFlavor.URL类提供了预定义的静态常量DocFlavor对象。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/PrintServiceLookup.html" title="class in javax.print">PrintServiceLookup</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
该类的实现为特定类型的打印服务(通常相当于打印机)提供查找服务。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/ServiceUI.html" title="class in javax.print">ServiceUI</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
该类是UI便利方法的集合,其提供用于浏览通过Java Print Service API查找的打印服务的图形用户对话框。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/ServiceUIFactory.html" title="class in javax.print">ServiceUIFactory</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
服务可以可选地提供UI,其允许不同角色的不同风格的交互。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/SimpleDoc.html" title="class in javax.print">SimpleDoc</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
该类是可以在许多常见打印请求中使用的接口
|
||
<code>Doc</code>实现。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/StreamPrintService.html" title="class in javax.print">StreamPrintService</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>该类扩展了<a href="../../javax/print/PrintService.html" title="javax.print中的接口"><code>PrintService</code></a> ,代表一种以不同格式将数据打印到客户端提供的输出流的打印服务。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/print/StreamPrintServiceFactory.html" title="class in javax.print">StreamPrintServiceFactory</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>A <code>StreamPrintServiceFactory</code>是<a href="../../javax/print/StreamPrintService.html" title="javax.print中的类"><code>StreamPrintService</code></a>实例的工厂,可以以描述为MIME类型的特定文档格式打印到输出流。</span>
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Exception Summary table, listing exceptions, and an explanation">
|
||
<caption>
|
||
<span>异常摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">异常</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/print/PrintException.html" title="class in javax.print">PrintException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
PrintException类封装了在使用Print Service实例时发生的与打印相关的错误条件。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
</ul>
|
||
<a name="package.description">
|
||
<!-- --> </a>
|
||
<h2 title="Package javax.print Description">Package javax.print Description</h2>
|
||
<div class="block">
|
||
<span>提供Java <sup><font size="-2">TM</font></sup> Print Service API的主要类和接口。</span>
|
||
<span>Java Print Service API使客户端和服务器应用程序能够:</span>
|
||
<ul>
|
||
<li> <span>根据他们的能力发现和选择打印服务</span> </li>
|
||
<li> <span>指定打印数据的格式</span> </li>
|
||
<li> <span>将打印作业提交到支持要打印的文档类型的服务。</span> </li>
|
||
</ul>
|
||
<h3> <span>打印服务发现</span> </h3>
|
||
<p> <span>应用程序调用抽象类<a href="../../javax/print/PrintServiceLookup.html" title="javax.print中的类"><code>PrintServiceLookup</code></a>的静态方法来定位具有满足应用程序打印请求功能的打印服务。</span> <span>例如,要打印双面文档,应用程序首先需要查找具有双面打印功能的打印机。</span> </p>
|
||
<p> <span>JDK包括可以定位标准平台打印机的<code>PrintServiceLookup</code>实现。</span> <span>要找到其他类型的打印机,如IPP打印机或JINI打印机,打印服务提供商可以编写PrintServiceLookup的<code>PrintServiceLookup</code> 。</span> <span>打印服务提供商可以使用SPI JAR file specification动态安装这些<code>PrintServiceLookup</code> <a href="../../../technotes/guides/jar/jar.html#Service%20Provider">实现</a> 。</span> </p>
|
||
<h3> <span>属性定义</span> </h3>
|
||
<span><a href="../../javax/print/attribute/package-summary.html"><code>javax.print.attribute</code></a>和<a href="../../javax/print/attribute/standard/package-summary.html"><code>javax.print.attribute.standard</code></a>软件包定义了打印属性,它们描述打印服务的功能,指定打印作业的要求,并跟踪打印作业的进度。</span>
|
||
<p> <span><code>javax.print.attribute</code>包描述了属性的类型以及如何将它们收集到集合中。</span> <span><code>javax.print.attribute.standard</code>包枚举了API支持的所有标准属性,其中大多数是2000年9月的IETF规范<a href="http://www.ietf.org/rfc/rfc2911.txt">RFC 2911 Internet Printing Protocol, 1.1: Model and Semantics</a>中指定的属性的实现。javax.print.attribute.standard中<code>javax.print.attribute.standard</code>包括常见功能,例如:分辨率,副本,媒体大小,作业优先级和页面范围。</span> </p>
|
||
<h3> <span>文件类型规格</span> </h3>
|
||
<span><a href="../../javax/print/DocFlavor.html" title="javax.print中的类"><code>DocFlavor</code></a>类表示打印数据格式,如JPEG或PostScript。</span>
|
||
<span><code>DocFlavor</code>对象由描述格式的MIME类型和指示文档如何传递到打印机或输出流的文档表示类名称组成。</span>
|
||
<span>应用程序使用<code>DocFlavor</code>和属性集来查找可以打印由<code>DocFlavor</code>的文档类型并具有属性集指定的功能的打印机。</span>
|
||
<h3> <span>使用API</span> </h3>
|
||
<span>使用Java Print Service API的典型应用程序会执行以下步骤来处理打印请求:</span>
|
||
<ol>
|
||
<li> <span>选择一个<code>DocFlavor</code> 。</span> </li>
|
||
<li> <span>创建一组属性。</span> </li>
|
||
<li> <span>找到可以处理<code>DocFlavor</code>和属性集指定的打印请求的打印服务。</span> </li>
|
||
<li> <span>创建<a href="../../javax/print/Doc.html" title="javax.print中的接口">封装</a> <code>DocFlavor</code>和实际打印数据的<a href="../../javax/print/Doc.html" title="javax.print中的接口"><code>Doc</code></a>对象,可以采取多种形式,包括:Postscript文件,JPEG图像,URL或纯文本。</span> </li>
|
||
<li> <span>从打印服务获取由<a href="../../javax/print/DocPrintJob.html" title="javax.print中的接口"><code>DocPrintJob</code></a>表示的打印作业。</span> </li>
|
||
<li> <span>调用打印作业的打印方式。</span> </li>
|
||
</ol>
|
||
<span>以下代码示例演示了Java Print Service API的典型用法:定位可以在A4纸上打印Postscript文档的五个双面副本的打印机,从返回的打印服务之一创建打印作业并调用打印。</span>
|
||
<blockquote>
|
||
<span><pre>
|
||
FileInputStream psStream;
|
||
try {
|
||
psStream = new FileInputStream("file.ps");
|
||
} catch (FileNotFoundException ffne) {
|
||
}
|
||
if (psStream == null) {
|
||
return;
|
||
}
|
||
|
||
DocFlavor psInFormat = DocFlavor.INPUT_STREAM.POSTSCRIPT;
|
||
Doc myDoc = new SimpleDoc(psStream, psInFormat, null);
|
||
PrintRequestAttributeSet aset =
|
||
new HashPrintRequestAttributeSet();
|
||
aset.add(new Copies(5));
|
||
aset.add(MediaSize.A4);
|
||
aset.add(Sides.DUPLEX);
|
||
PrintService[] services =
|
||
PrintServiceLookup.lookupPrintServices(psInFormat, aset);
|
||
if (services.length > 0) {
|
||
DocPrintJob job = services[0].createPrintJob();
|
||
try {
|
||
job.print(myDoc, aset);
|
||
} catch (PrintException pe) {}
|
||
}
|
||
</pre></span>
|
||
</blockquote>
|
||
<p> <span>请注意:在javax.print API中,方法的空参考参数是不正确的,除非在方法中明确记录为具有有意义的解释。</span> <span>使用相反的是错误的编码,可能会立即或稍后导致运行时异常。</span> <span>IllegalArgumentException和NullPointerException是这种情况的典型和可接受的运行时间异常的示例。</span> </p>
|
||
<p></p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="simpleTagLabel">从以下版本开始:</span>
|
||
</dt>
|
||
<dd>
|
||
1.4
|
||
</dd>
|
||
</dl>
|
||
</div> |