模块  java.desktop
软件包  java.awt

Class JobAttributes

  • 实现的所有接口
    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
    • 构造方法详细信息

      • 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.ALLDefaultSelectionType.RANGE ,或 DefaultSelectionType.SELECTION
        destination - DestinationType.FILEDestinationType.PRINTER
        dialog - DialogType.COMMONDialogType.NATIVE ,或 DialogType.NONE
        fileName - 可能的 null文件名
        maxPage - 大于零且大于或等于 minPage的整数
        minPage - 大于零且小于或等于 maxPage的整数
        multipleDocumentHandling - MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_COLLATED_COPIESMultipleDocumentHandlingType.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_SIDEDSidesType.TWO_SIDED_LONG_EDGE ,或 SidesType.TWO_SIDED_SHORT_EDGE
        异常
        IllegalArgumentException - 如果违反上述一个或多个条件
    • 方法详细信息

      • clone

        public Object clone()
        创建并返回此 JobAttributes的副本。
        重写:
        cloneObject
        结果
        新创建的副本; 将此Object转换为JobAttributes是安全的
        另请参见:
        Cloneable
      • 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 - 如果destination为null。
      • getDialog

        public JobAttributes.DialogType getDialog()
        返回对于使用这些属性的作业,用户是否应该看到用于修改打印设置的打印对话框,以及应显示哪种类型的打印对话框。 DialogType.COMMON表示一个跨平台的纯Java打印对话框。 DialogType.NATIVE表示平台的本机打印对话框。 如果平台不支持本机打印对话框,则会显示纯Java打印对话框。 DialogType.NONE指定没有打印对话框(即后台打印)。 此属性不能由实现或目标打印机修改,也不受其限制。
        结果
        DialogType.COMMONDialogType.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 - 如果dialog为null。
      • 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 [] { minPageminPage }});
        参数
        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 - 如果sides为null。
      • 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是相等的。 当且仅当字段引用相同的唯一枚举对象时,枚举类型的属性才相等。 当且仅当集合的长度相等时,一组页面范围相等,每个范围枚举相同的页面,并且范围的顺序相同。

        重写:
        equalsObject
        参数
        obj - 将检查其相等性的对象。
        结果
        根据上述标准,obj是否等于此JobAttribute。
        另请参见:
        Object.hashCode()HashMap
      • toString

        public String toString()
        返回此JobAttributes的字符串表示形式。
        重写:
        toStringObject
        结果
        the string representation.