- java.lang.Object
-
- java.awt.JobAttributes
-
- All Implemented Interfaces:
-
Cloneable
public final class JobAttributes extends Object implements Cloneable
一组控制打印作业的属性。该类的实例控制使用的每个打印作业的份数,默认选择,目的地,打印对话框,文件和打印机名称,页面范围,多个文档处理(包括排序规则)和多页面拼版(如双面)实例。 如果可能,属性名称符合Internet打印协议(IPP)1.1。 属性值在可能的情况下是部分兼容的。
要使用一个接受内部类类型的方法,请将引用传递给内部类的一个常量字段。 客户端代码不能创建内部类类型的新实例,因为这些类都不具有公共构造函数。 例如,要将打印对话框类型设置为跨平台,纯Java打印对话框,请使用以下代码:
import java.awt.JobAttributes; public class PureJavaPrintDialogExample { public void setPureJavaPrintDialog(JobAttributes jobAttributes) { jobAttributes.setDialog(JobAttributes.DialogType.COMMON); } }
支持attributeName -default值的每个IPP属性都具有相应的
setattributeNameToDefault
方法。 未提供默认值字段。- 从以下版本开始:
- 1.3
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 static class
JobAttributes.DefaultSelectionType
可能的默认选择状态的类型安全枚举。static class
JobAttributes.DestinationType
可能的工作目的地的类型安全枚举。static class
JobAttributes.DialogType
可以显示给用户的可能对话框的类型安全枚举。static class
JobAttributes.MultipleDocumentHandlingType
可能的多重复制处理状态的类型安全枚举。static class
JobAttributes.SidesType
可能的多页面强制的类型安全枚举。
-
构造方法摘要
构造方法 Constructor 描述 JobAttributes()
为每个属性构造具有默认值的JobAttributes
实例。JobAttributes(int copies, JobAttributes.DefaultSelectionType defaultSelection, JobAttributes.DestinationType destination, JobAttributes.DialogType dialog, String fileName, int maxPage, int minPage, JobAttributes.MultipleDocumentHandlingType multipleDocumentHandling, int[][] pageRanges, String printer, JobAttributes.SidesType sides)
为每个属性构造具有指定值的JobAttributes
实例。JobAttributes(JobAttributes obj)
构造一个JobAttributes
实例,它是所提供的JobAttributes
的副本。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 Object
clone()
创建并返回此JobAttributes
的副本。boolean
equals(Object obj)
确定两个JobAttributes是否相等。int
getCopies()
返回应用程序应使用这些属性为作业呈现的副本数。JobAttributes.DefaultSelectionType
getDefaultSelection()
指定对于使用这些属性的作业,应用程序是否应打印所有页面,由返回值getPageRanges
指定的范围或当前选择。JobAttributes.DestinationType
getDestination()
指定输出将是打印机还是使用这些属性的作业文件。JobAttributes.DialogType
getDialog()
返回对于使用这些属性的作业,用户是否应该看到要修改打印设置的打印对话框,以及应显示哪种类型的打印对话框。String
getFileName()
指定使用这些属性的作业的输出文件的文件名。int
getFromPage()
对于使用这些属性的作业,如果要打印一系列页面,则返回要打印的第一页。int
getMaxPage()
指定用户可以指定的最大值作为使用这些属性的作业打印的最后一页。int
getMinPage()
指定用户可以指定的最小值作为使用这些属性的作业打印的第一页。JobAttributes.MultipleDocumentHandlingType
getMultipleDocumentHandling()
指定对使用这些属性的作业处理多个副本(包括排序规则)。int[][]
getPageRanges()
对于使用这些属性的作业,指定要打印的页面范围,如果要打印的页面范围。String
getPrinter()
使用这些属性返回作业的目标打印机。JobAttributes.SidesType
getSides()
返回在使用这些属性的作业的打印介质的两侧应该如何施加连续的页面。int
getToPage()
对于要使用这些属性的作业,如果要打印的页面范围,则返回要打印的最后一页(包括)。int
hashCode()
返回此JobAttributes的哈希码值。void
set(JobAttributes obj)
将此JobAttributes
所有属性设置为与obj的属性相同的值。void
setCopies(int copies)
指定应用程序应使用这些属性为作业呈现的副本数。void
setCopiesToDefault()
设置应用程序应将这些属性的作业呈现给默认的副本数。void
setDefaultSelection(JobAttributes.DefaultSelectionType defaultSelection)
指定对于使用这些属性的作业,应用程序是否应打印所有页面,由返回值getPageRanges
指定的范围或当前选择。void
setDestination(JobAttributes.DestinationType destination)
指定输出将是打印机还是使用这些属性的作业文件。void
setDialog(JobAttributes.DialogType dialog)
指定对于使用这些属性的作业,用户是否应该看到要修改打印设置的打印对话框,以及应显示哪种类型的打印对话框。void
setFileName(String fileName)
指定使用这些属性的作业的输出文件的文件名。void
setFromPage(int fromPage)
对于要使用这些属性的作业,如果要打印一系列页面,则指定要打印的第一页。void
setMaxPage(int maxPage)
指定用户可以指定的最大值作为使用这些属性的作业打印的最后一页。void
setMinPage(int minPage)
指定用户可以指定的最小值作为使用这些属性的作业打印的第一页。void
setMultipleDocumentHandling(JobAttributes.MultipleDocumentHandlingType multipleDocumentHandling)
指定对使用这些属性的作业处理多个副本(包括排序规则)。void
setMultipleDocumentHandlingToDefault()
将使用这些属性的作业的多个副本(包括排序规则)的处理设置为默认值。void
setPageRanges(int[][] pageRanges)
对于使用这些属性的作业,指定要打印的页面范围,如果要打印的页面范围。void
setPrinter(String printer)
使用这些属性指定作业的目标打印机。void
setSides(JobAttributes.SidesType sides)
指定在使用这些属性的作业的打印介质的两侧应如何施加连续的页面。void
setSidesToDefault()
设置如何使用这些属性将打印介质的两侧的连续页面施加到默认页面。void
setToPage(int toPage)
对于要使用这些属性的作业,如果要打印的页面范围,则指定要打印的最后一页(含)。String
toString()
返回此JobAttributes的字符串表示形式。
-
-
-
构造方法详细信息
-
JobAttributes
public JobAttributes()
为每个属性构造具有默认值的JobAttributes
实例。 对话框默认为DialogType.NATIVE
。 最小页面默认为1
。 最大页面默认为Integer.MAX_VALUE
。 目的地默认为DestinationType.PRINTER
。 选择默认为DefaultSelectionType.ALL
。 份数默认为1
。 多个文档处理默认为MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES
。 侧面默认为SidesType.ONE_SIDED
。 文件名默认为null
。
-
JobAttributes
public JobAttributes(JobAttributes obj)
构造一个JobAttributes
实例,它是所提供的JobAttributes
的副本。- 参数
-
obj
- 要复制的JobAttributes
-
JobAttributes
public JobAttributes(int copies, JobAttributes.DefaultSelectionType defaultSelection, JobAttributes.DestinationType destination, JobAttributes.DialogType dialog, String fileName, int maxPage, int minPage, JobAttributes.MultipleDocumentHandlingType multipleDocumentHandling, int[][] pageRanges, String printer, JobAttributes.SidesType sides)
为每个属性构造具有指定值的JobAttributes
实例。- 参数
-
copies
- 大于0的整数 -
defaultSelection
-DefaultSelectionType.ALL
,DefaultSelectionType.RANGE
,或DefaultSelectionType.SELECTION
-
destination
-DestinationType.FILE
或DestinationType.PRINTER
-
dialog
-DialogType.COMMON
,DialogType.NATIVE
,或DialogType.NONE
-
fileName
- 可能有null
文件名 -
maxPage
- 大于零且大于或等于 minPage的整数 -
minPage
- 大于零且小于或等于 maxPage的整数 -
multipleDocumentHandling
-MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_COLLATED_COPIES
或MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES
-
pageRanges
- 两个元素的整数数组的数组; 一个数组被解释为涵盖指定页面之间的所有页面的范围; 范围必须按升序排列,不得重叠; 指定的页码不能小于minPage,也不能大于maxPage ; 例如:(new int[][] { new int[] { 1, 3 }, new int[] { 5, 5 }, new int[] { 15, 19 } }),
指定页面new int[][] { new int[] { 1, 1 }, new int[] { 1, 2 } }
和19.注意(new int[][] { new int[] { 1, 1 }, new int[] { 1, 2 } }
)是一组无效的页面范围,因为两个范围重叠 -
printer
- 可能的null
打印机名称 -
sides
-SidesType.ONE_SIDED
,SidesType.TWO_SIDED_LONG_EDGE
,或SidesType.TWO_SIDED_SHORT_EDGE
- 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反
-
-
方法详细信息
-
clone
public Object clone()
创建并返回此JobAttributes
的副本。
-
set
public void set(JobAttributes obj)
将此JobAttributes
所有属性设置为与obj的属性相同的值。- 参数
-
obj
- 要复制的JobAttributes
-
getCopies
public int getCopies()
返回应用程序应使用这些属性为作业呈现的副本数。 此属性更新为用户选择的值。- 结果
- 大于0的整数。
-
setCopies
public void setCopies(int copies)
指定应用程序应使用这些属性为作业呈现的副本数。 不指定此属性等同于指定1
。- 参数
-
copies
- 大于0的整数 - 异常
-
IllegalArgumentException
- 如果copies
小于或等于0
-
setCopiesToDefault
public void setCopiesToDefault()
设置应用程序应将这些属性的作业呈现给默认的副本数。 默认份数为1。
-
getDefaultSelection
public JobAttributes.DefaultSelectionType getDefaultSelection()
指定对于使用这些属性的作业,应用程序是否应打印所有页面,返回值为getPageRanges
指定的范围,或当前选择。 此属性更新为用户选择的值。- 结果
- DefaultSelectionType.ALL,DefaultSelectionType.RANGE或DefaultSelectionType.SELECTION
-
setDefaultSelection
public void setDefaultSelection(JobAttributes.DefaultSelectionType defaultSelection)
指定对于使用这些属性的作业,应用程序是否应打印所有页面,由返回值getPageRanges
指定的范围或当前选择。 不指定此属性等同于指定DefaultSelectionType.ALL。- 参数
-
defaultSelection
- DefaultSelectionType.ALL,DefaultSelectionType.RANGE或DefaultSelectionType.SELECTION。 - 异常
-
IllegalArgumentException
- 如果defaultSelection是null
-
getDestination
public JobAttributes.DestinationType getDestination()
指定输出将是打印机还是使用这些属性的作业文件。 此属性更新为用户选择的值。- 结果
- DestinationType.FILE或DestinationType.PRINTER
-
setDestination
public void setDestination(JobAttributes.DestinationType destination)
指定输出将是打印机还是使用这些属性的作业文件。 不指定此属性等同于指定DestinationType.PRINTER。- 参数
-
destination
- DestinationType.FILE或DestinationType.PRINTER。 - 异常
-
IllegalArgumentException
- 如果目的地为空。
-
getDialog
public JobAttributes.DialogType getDialog()
返回对于使用这些属性的作业,用户是否应该看到要修改打印设置的打印对话框,以及应显示哪种类型的打印对话框。 DialogType.COMMON表示跨平台,纯Java打印对话框。 DialogType.NATIVE表示平台的本地打印对话框。 如果平台不支持本地打印对话框,则会显示纯Java打印对话框。 DialogType.NONE不指定打印对话框(即背景打印)。 该属性不能由实现或目标打印机修改,也不受任何限制。- 结果
-
DialogType.COMMON
,DialogType.NATIVE
,或DialogType.NONE
-
setDialog
public void setDialog(JobAttributes.DialogType dialog)
指定对于使用这些属性的作业,用户是否应该看到要修改打印设置的打印对话框,以及应显示哪种类型的打印对话框。 DialogType.COMMON表示跨平台,纯Java打印对话框。 DialogType.NATIVE表示平台的本地打印对话框。 如果平台不支持本地打印对话框,则会显示纯Java打印对话框。 DialogType.NONE不指定打印对话框(即背景打印)。 不指定此属性等同于指定DialogType.NATIVE。- 参数
-
dialog
- DialogType.COMMON,DialogType.NATIVE或DialogType.NONE。 - 异常
-
IllegalArgumentException
- 如果对话框为空。
-
getFileName
public String getFileName()
指定使用这些属性的作业的输出文件的文件名。 此属性更新为用户选择的值。- 结果
-
可能是
null
文件名
-
setFileName
public void setFileName(String fileName)
指定使用这些属性的作业的输出文件的文件名。 默认是平台依赖和实现定义。- 参数
-
fileName
- 可能为空的文件名。
-
getFromPage
public int getFromPage()
对于使用这些属性的作业,如果要打印一系列页面,则返回要打印的第一页。 此属性更新为用户选择的值。 应用程序应忽略输出上的此属性,除非getDefaultSelection
方法的返回值为DefaultSelectionType.RANGE。 如果可能,应用程序应遵守该方法的返回值为getPageRanges
的返回值。- 结果
- 大于零且小于或等于 toPage并大于或等于 minPage且小于或等于 maxPage的整数。
-
setFromPage
public void setFromPage(int fromPage)
对于要使用这些属性的作业,如果要打印一系列页面,则指定要打印的第一页。 如果未指定此属性,则使用pageRanges属性中的值。 如果pageRanges和指定fromPage和toPage中的一个或两个,则优先使用pageRanges。 指定没有pageRanges,fromPage或toPage等价于调用setPageRanges(new int [] [] {new int [] { minPage }});- 参数
-
fromPage
- 大于零且小于或等于 toPage并大于或等于 minPage且小于或等于 maxPage的整数。 - 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反。
-
getMaxPage
public int getMaxPage()
指定用户可以指定的最大值作为使用这些属性的作业打印的最后一页。 该属性不能由实现或目标打印机修改,也不受任何限制。- 结果
- 大于零且大于或等于 minPage的整数。
-
setMaxPage
public void setMaxPage(int maxPage)
指定用户可以指定的最大值作为使用这些属性的作业打印的最后一页。 不指定此属性等同于指定Integer.MAX_VALUE
。- 参数
-
maxPage
- 一个大于零且大于或等于 minPage的整数 - 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反
-
getMinPage
public int getMinPage()
指定用户可以指定的最小值作为使用这些属性的作业打印的第一页。 该属性不能由实现或目标打印机修改,也不受任何限制。- 结果
- 大于零且小于或等于 maxPage的整数。
-
setMinPage
public void setMinPage(int minPage)
指定用户可以指定的最小值作为使用这些属性的作业打印的第一页。 不指定此属性等同于指定1
。- 参数
-
minPage
- 大于零且小于或等于 maxPage的整数。 - 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反。
-
getMultipleDocumentHandling
public JobAttributes.MultipleDocumentHandlingType getMultipleDocumentHandling()
指定对使用这些属性的作业处理多个副本(包括排序规则)。 此属性更新为用户选择的值。- 结果
- MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_COLLATED_COPIES或MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES。
-
setMultipleDocumentHandling
public void setMultipleDocumentHandling(JobAttributes.MultipleDocumentHandlingType multipleDocumentHandling)
指定对使用这些属性的作业处理多个副本(包括排序规则)。 不指定此属性等效于指定MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES。- 参数
-
multipleDocumentHandling
- MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_COLLATED_COPIES或MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES。 - 异常
-
IllegalArgumentException
- 如果multipleDocumentHandling为null。
-
setMultipleDocumentHandlingToDefault
public void setMultipleDocumentHandlingToDefault()
将使用这些属性的作业的多个副本(包括排序规则)的处理设置为默认值。 默认处理为MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES。
-
getPageRanges
public int[][] getPageRanges()
对于使用这些属性的作业,指定要打印的页面范围,如果要打印的页面范围。 所有范围数字均包含在内。 此属性更新为用户选择的值。 应用程序应该忽略输出上的此属性,除非getDefaultSelection
方法的返回值为DefaultSelectionType.RANGE。- 结果
- 2个元素的整数数组数组。 一个数组被解释为跨越包含指定页面的所有页面的范围。 范围必须按照升序排列,不得重叠。 指定的页码不能小于minPage,也不能大于maxPage 。 例如:(new int [] [] {new int [] {1,3},new int [] {5,5},new int [] {15,19}}),指定页面1,2,3 ,5,15,16,17,18和19。
-
setPageRanges
public void setPageRanges(int[][] pageRanges)
对于使用这些属性的作业,指定要打印的页面范围,如果要打印的页面范围。 所有范围数字均包含在内。 如果未指定此属性,则使用fromPage和toPages属性的值。 如果pageRanges和指定fromPage和toPage中的一个或两个,则优先使用pageRanges。 指定没有pageRanges,fromPage或toPage等价于调用setPageRanges(new int [] [] {new int [] { minPage , minPage }});- 参数
-
pageRanges
- 2个元素的整数数组数组。 一个数组被解释为跨越包含指定页面的所有页面的范围。 范围必须按照升序排列,不得重叠。 指定的页码不能小于minPage,也不能大于maxPage 。 例如:(new int [] [] {new int [] {1,3},new int [] {5,5},new int [] {15,19}}),指定页面1,2,3 ,5,15,16,17,18,和19.注意,(new int [] [] {new int [] {1,1},new int [] {1,2}})因为两个范围重叠。 - 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反。
-
getPrinter
public String getPrinter()
使用这些属性返回作业的目标打印机。 此属性更新为用户选择的值。- 结果
- 可能为空的打印机名称。
-
setPrinter
public void setPrinter(String printer)
使用这些属性指定作业的目标打印机。 默认是平台依赖和实现定义。- 参数
-
printer
- 可能为空的打印机名称。
-
getSides
public JobAttributes.SidesType getSides()
返回在使用这些属性的作业的打印介质的两侧应该如何施加连续的页面。 SidesType.ONE_SIDED将每个连续的页面强加在连续媒体页面的同一侧。 这种拼法有时被称为单纯形 。 SidesType.TWO_SIDED_LONG_EDGE在连续的介质页的前后两侧将每个连续的页面加在一起,使得介质上的每对页面的方向对于读取器来说将是正确的,如同在长边缘上的装订一样。 这种拼法有时被称为双面 。 SidesType.TWO_SIDED_SHORT_EDGE在连续介质页的前后两侧将每个连续的页面强加,使得介质上的每对页面的方向对于读取器将是正确的,如同在短边上的装订一样。 这种拼法有时被称为滚滚 。 此属性更新为用户选择的值。- 结果
- SidesType.ONE_SIDED,SidesType.TWO_SIDED_LONG_EDGE或SidesType.TWO_SIDED_SHORT_EDGE。
-
setSides
public void setSides(JobAttributes.SidesType sides)
指定在使用这些属性的作业的打印介质的两侧应如何施加连续的页面。 SidesType.ONE_SIDED将每个连续的页面强加在连续媒体页面的同一侧。 这种拼法有时被称为单纯形 。 SidesType.TWO_SIDED_LONG_EDGE在连续的介质页的前后两侧将每个连续的页面加在一起,使得介质上的每对页面的方向对于读取器来说将是正确的,如同在长边缘上的装订一样。 这种拼法有时被称为双面 。 SidesType.TWO_SIDED_SHORT_EDGE在连续介质页的前后两侧将每个连续的页面强加,使得介质上的每对页面的方向对于读取器将是正确的,如同在短边上的装订一样。 这种拼法有时被称为滚滚 。 不指定此属性等同于指定SidesType.ONE_SIDED。- 参数
-
sides
- SidesType.ONE_SIDED,SidesType.TWO_SIDED_LONG_EDGE或SidesType.TWO_SIDED_SHORT_EDGE。 - 异常
-
IllegalArgumentException
- 如果边为空。
-
setSidesToDefault
public void setSidesToDefault()
设置如何使用这些属性将打印介质的两侧的连续页面施加到默认页面。 默认拼版为SidesType.ONE_SIDED。
-
getToPage
public int getToPage()
对于要使用这些属性的作业,如果要打印的页面范围,则返回要打印的最后一页(包括)。 此属性更新为用户选择的值。 应用程序应该忽略输出上的此属性,除非getDefaultSelection
方法的返回值为DefaultSelectionType.RANGE。 如果可能,应用程序应该遵守getPageRanges
的返回值超过此方法的返回值。- 结果
- 大于零且大于或等于 toPage并大于或等于 minPage并小于或等于 maxPage的整数。
-
setToPage
public void setToPage(int toPage)
对于要使用这些属性的作业,如果要打印的页面范围,则指定要打印的最后一页(含)。 如果未指定此属性,则使用pageRanges属性中的值。 如果pageRanges和指定fromPage和toPage中的一个或两个,则优先使用pageRanges。 指定没有pageRanges,fromPage或toPage等价于调用setPageRanges(new int [] [] {new int [] { minPage }});- 参数
-
toPage
- 一个大于零且大于或等于 fromPage并大于或等于 minPage且小于或等于 maxPage的整数。 - 异常
-
IllegalArgumentException
- 如果上述条件中的一个或多个被违反。
-
equals
public boolean equals(Object obj)
确定两个JobAttributes是否相等。当且仅当它们的每个属性相等时,两个JobAttributes是相等的。 枚举类型的属性当且仅当这些域引用相同的唯一枚举对象时相等。 当且仅当集合长度相等时,一组页面范围是相等的,每个范围枚举相同的页面,范围是相同的顺序。
- 重写:
-
equals
在Object
- 参数
-
obj
- 将检查其相等性的对象。 - 结果
- 根据上述标准,obj是否等于此JobAttribute。
- 另请参见:
-
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
返回此JobAttributes的哈希码值。- 重写:
-
hashCode
在Object
- 结果
- 哈希码。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-