javax.print.attribute.standard

java.lang.Object
  继承者 javax.print.attribute.IntegerSyntax
      继承者 javax.print.attribute.standard.JobKOctets
所有已实现的接口:
Serializable, Cloneable, Attribute, PrintJobAttribute, PrintRequestAttribute

public final class JobKOctets
     
extends IntegerSyntax
implements PrintRequestAttribute, PrintJobAttribute

JobKOctets 类是整数值形式的打印属性类,它指定了以 K 字节为单位的文档总大小,即以要在作业中处理的所请求的 1024 字节为单位。必须对该值进行舍入操作,这样 1 字节和 1024 字节之间的作业必须指示为 1K 字节,1025 到 2048 必须指示为 2K 字节, 依此类推。对于多文档打印作业(具有多个文档的作业),JobKOctets 值的计算是通过累加单个文档的字节大小,然后舍入到最近的 K 字节值来实现的。

JobKOctets 属性描述了作业的大小。此属性不是计数器,它应是有用的路径和计划信息(如果已知)。如果在 Print Request 中未提供 JobKOctets 属性值,则打印机可能尝试计算该值。即使客户机在 Print Request 中提供了 JobKOctets 属性值,如果打印机能够计算出比客户机所提供的值更精确的值,则打印机可以选择更改该值。在刚好提交作业的时刻,或提交后的任意时刻,打印机可以确定 JobKOctets 属性的正确值。

JobKOctets 值不能包括由 Copies 属性指定的副本数所产生的乘数,这与设备能否在无需多次传递作业或文档数据的情况下处理多个副本无关,并且与输出是否逐份打印无关。因此,该值与实现无关,它指示文档(或多个文档)大小,度量单位是与副本数无关的 K 字节。

JobKOctets 值不能包括由嵌入文档数据的副本指令产生的乘数。如果文档数据实际上包括文档数据的复制,则此值将包括这样的复制。换句话说,此值总是源文档数据的大小,而不是要生成的硬拷贝输出的度量。

文档大小是根据文档的 DocFlavor 指定的打印数据表示形式类计算的,如下表所示。

表示形式类 文档大小
byte[] 字节数组的长度
java.io.InputStream 从流读取的字节数
char[] 字符数组的长度 x 2
java.lang.String 字符串的长度 x 2
java.io.Reader 从流读取的字符数 x 2
java.net.URL 从给定的 URL 地址处的文件读取的字节数
java.awt.image.renderable.RenderableImage 与实现有关*
java.awt.print.Printable 与实现有关*
java.awt.print.Pageable 与实现有关*

* 在这些情况下,Print Service 本身生成要发送到打印机的打印数据。如果 Print Service 支持 JobKOctets 属性,则对于这些情况,Print Service 本身必须计算打印数据的大小,替换客户机所指定的任何 JobKOctets 值。

IPP Compatibility: 整数值给出了 IPP 整数值。getName() 所返回的类别名称给出了 IPP 属性名称。

另请参见:
JobKOctetsSupported, JobKOctetsProcessed, JobImpressions, JobMediaSheets, 序列化表格

构造方法摘要
JobKOctets(int value)
          构造具有给定整数值的新 JobKOctets 属性。
 
方法摘要
 boolean equals(Object object)
          返回此 JobKOctets 属性是否等效于传入的对象。
 Class<? extends Attribute> getCategory()
          获取将被用作此打印属性值的“类别”的打印属性类。
 String getName()
          获取类别名称,此属性值为该类别的实例。
 
从类 javax.print.attribute.IntegerSyntax 继承的方法
getValue, hashCode, toString
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

JobKOctets

public JobKOctets(int value)
构造具有给定整数值的新 JobKOctets 属性。

参数:
value - 整数值。
抛出:
IllegalArgumentException - (未检查的异常)如果 value 小于 0,则抛出该异常。
方法详细信息

equals

public boolean equals(Object object)
返回此 JobKOctets 属性是否等效于传入的对象。若要等效,以下所有条件都必须为 true:
  1. object 不为 null。
  2. object 为 JobKOctets 类的实例。
  3. 此 JobKOctets 属性值与 object 的值相等。

覆盖:
IntegerSyntax 中的 equals
参数:
object - 要比较的 Object。
返回:
如果 object 等效于此 JobKOctets 属性,则返回 true,否则返回 false。
另请参见:
Object.hashCode(), Hashtable

getCategory

public final Class<? extends Attribute> getCategory()
获取将被用作此打印属性值的“类别”的打印属性类。

对于 JobKOctets 类,类别为 JobKOctets 类本身。

指定者:
接口 Attribute 中的 getCategory
返回:
打印属性类(类别),它是 java.lang.Class 类的实例。

getName

public final String getName()
获取类别名称,此属性值为该类别的实例。

对于 JobKOctets 类,类别名称为 "job-k-octets"

指定者:
接口 Attribute 中的 getName
返回:
属性类别名称。