Module java.desktop
Package java.awt

Class PageAttributes

java.lang.Object
java.awt.PageAttributes
所有已实现的接口:
Cloneable

public final class PageAttributes extends Object implements Cloneable
一组控制打印页面输出的属性。

此类的实例控制使用该实例的每个页面的颜色状态、纸张大小(介质类型)、方向、逻辑原点、打印质量和分辨率。 属性名称尽可能符合Internet打印协议(IPP)1.1。 属性值在可能的情况下部分符合。

要使用接受内部类类型的方法,请传递内部类的常量字段之一的引用。 客户端代码无法创建内部类类型的新实例,因为这些类都没有公共构造函数。 例如,要将颜色状态设置为单色,请使用以下代码:

 import java.awt.PageAttributes;

 public class MonochromeExample {
     public void setMonochrome(PageAttributes pageAttributes) {
         pageAttributes.setColor(PageAttributes.ColorType.MONOCHROME);
     }
 }
 

每个支持attributeName-默认值的IPP属性都有相应的setattributeNameToDefault方法。 不提供默认值字段。

自版本:
1.3
  • Constructor Details

    • PageAttributes

      public PageAttributes()
      使用每个属性的默认值构造PageAttributes实例。
    • PageAttributes

      public PageAttributes(PageAttributes obj)
      构造一个与提供的PageAttributes副本相同的PageAttributes实例。
      参数:
      obj - 要复制的PageAttributes。
    • PageAttributes

      public PageAttributes(PageAttributes.ColorType color, PageAttributes.MediaType media, PageAttributes.OrientationRequestedType orientationRequested, PageAttributes.OriginType origin, PageAttributes.PrintQualityType printQuality, int[] printerResolution)
      使用指定值构造每个属性的PageAttributes实例。
      参数:
      color - ColorType.COLOR或ColorType.MONOCHROME。
      media - MediaType类的常量字段之一。
      orientationRequested - OrientationRequestedType.PORTRAIT或OrientationRequestedType.LANDSCAPE。
      origin - OriginType.PHYSICAL或OriginType.PRINTABLE
      printQuality - PrintQualityType.DRAFT、PrintQualityType.NORMAL或PrintQualityType.HIGH
      printerResolution - 一个包含3个元素的整数数组。 第一个元素必须大于0。 第二个元素必须大于0。 第三个元素必须是34
      抛出:
      IllegalArgumentException - 如果违反上述条件中的一个或多个。
  • Method Details

    • clone

      public Object clone()
      创建并返回此PageAttributes的副本。
      覆盖:
      clone 在类 Object
      返回:
      新创建的副本。可以将此对象安全地转换为PageAttributes。
      参见:
    • set

      public void set(PageAttributes obj)
      将此PageAttributes的所有属性设置为obj的属性的相同值。
      参数:
      obj - 要复制的PageAttributes。
    • getColor

      public PageAttributes.ColorType getColor()
      返回使用这些属性的页面是否以彩色或单色呈现。此属性将更新为用户选择的值。
      返回:
      ColorType.COLOR或ColorType.MONOCHROME。
    • setColor

      public void setColor(PageAttributes.ColorType color)
      指定使用这些属性的页面是否以彩色或单色呈现。不指定此属性等效于指定ColorType.MONOCHROME。
      参数:
      color - ColorType.COLOR或ColorType.MONOCHROME。
      抛出:
      IllegalArgumentException - 如果颜色为null。
    • getMedia

      public PageAttributes.MediaType getMedia()
      返回使用这些属性的页面的纸张大小。此属性将更新为用户选择的值。
      返回:
      MediaType类的常量字段之一。
    • setMedia

      public void setMedia(PageAttributes.MediaType media)
      指定使用这些属性的页面的期望纸张大小。实际纸张大小将由目标打印机的限制确定。如果找不到精确匹配,实现将选择最接近的可能匹配项。不指定此属性等效于指定默认区域的默认大小。美国和加拿大地区的默认大小为MediaType.NA_LETTER。所有其他地区的默认大小为MediaType.ISO_A4。
      参数:
      media - MediaType类的常量字段之一。
      抛出:
      IllegalArgumentException - 如果media为null。
    • setMediaToDefault

      public void setMediaToDefault()
      将使用这些属性的页面的纸张大小设置为默认区域的默认大小。美国和加拿大地区的默认大小为MediaType.NA_LETTER。所有其他地区的默认大小为MediaType.ISO_A4。
    • getOrientationRequested

      public PageAttributes.OrientationRequestedType getOrientationRequested()
      返回使用这些属性的页面的打印方向。此属性将更新为用户选择的值。
      返回:
      OrientationRequestedType.PORTRAIT或OrientationRequestedType.LANDSCAPE。
    • setOrientationRequested

      public void setOrientationRequested(PageAttributes.OrientationRequestedType orientationRequested)
      指定使用这些属性的页面的打印方向。不指定属性等效于指定OrientationRequestedType.PORTRAIT。
      参数:
      orientationRequested - OrientationRequestedType.PORTRAIT或OrientationRequestedType.LANDSCAPE。
      抛出:
      IllegalArgumentException - 如果orientationRequested为null。
    • setOrientationRequested

      public void setOrientationRequested(int orientationRequested)
      指定使用这些属性的页面的打印方向。指定3表示纵向。指定4表示横向。指定任何其他值将生成IllegalArgumentException。不指定属性等效于调用setOrientationRequested(OrientationRequestedType.PORTRAIT)。
      参数:
      orientationRequested - 34
      抛出:
      IllegalArgumentException - 如果orientationRequested不是34
    • setOrientationRequestedToDefault

      public void setOrientationRequestedToDefault()
      将使用这些属性的页面的打印方向设置为默认。默认方向为纵向。
    • getOrigin

      public PageAttributes.OriginType getOrigin()
      返回使用这些属性的页面在(0, 0)处绘制时是在物理页面的左上角绘制,还是在可打印区域的左上角绘制。 (请注意,这些位置可能是等效的。)此属性不能由实现或目标打印机修改,也不受任何限制。
      返回:
      OriginType.PHYSICAL或OriginType.PRINTABLE
    • setOrigin

      public void setOrigin(PageAttributes.OriginType origin)
      指定使用这些属性的页面在(0, 0)处绘制时是在物理页面的左上角绘制,还是在可打印区域的左上角绘制。 (请注意,这些位置可能是等效的。)不指定属性等效于指定OriginType.PHYSICAL。
      参数:
      origin - OriginType.PHYSICAL 或 OriginType.PRINTABLE
      抛出:
      IllegalArgumentException - 如果 origin 为 null。
    • getPrintQuality

      public PageAttributes.PrintQualityType getPrintQuality()
      返回使用这些属性的页面的打印质量。此属性将更新为用户选择的值。
      返回:
      PrintQualityType.DRAFT, PrintQualityType.NORMAL, 或 PrintQualityType.HIGH
    • setPrintQuality

      public void setPrintQuality(PageAttributes.PrintQualityType printQuality)
      指定使用这些属性的页面的打印质量。不指定该属性等同于指定PrintQualityType.NORMAL。
      参数:
      printQuality - PrintQualityType.DRAFT, PrintQualityType.NORMAL, 或 PrintQualityType.HIGH
      抛出:
      IllegalArgumentException - 如果 printQuality 为 null。
    • setPrintQuality

      public void setPrintQuality(int printQuality)
      指定使用这些属性的页面的打印质量。指定 3 表示草稿。指定 4 表示正常。指定 5 表示高。指定其他任何值将生成 IllegalArgumentException。不指定该属性等同于调用 setPrintQuality(PrintQualityType.NORMAL)。
      参数:
      printQuality - 3, 4, 或 5
      抛出:
      IllegalArgumentException - 如果 printQuality 不是 3, 4, 或 5
    • setPrintQualityToDefault

      public void setPrintQualityToDefault()
      将使用这些属性的页面的打印质量设置为默认值。默认打印质量为正常。
    • getPrinterResolution

      public int[] getPrinterResolution()
      返回使用这些属性的页面的打印分辨率。数组的索引 0 指定横向分辨率(通常为水平分辨率)。数组的索引 1 指定纵向分辨率(通常为垂直分辨率)。数组的索引 2 指定分辨率是每英寸还是每厘米。 3 表示每英寸的点数。 4 表示每厘米的点数。
      返回:
      一个包含 3 个元素的整数数组。第一个元素必须大于 0。第二个元素必须大于 0。第三个元素必须是 34
    • setPrinterResolution

      public void setPrinterResolution(int[] printerResolution)
      指定使用这些属性的页面的所需打印分辨率。实际分辨率将由实现的限制和目标打印机确定。数组的索引 0 指定横向分辨率(通常为水平分辨率)。数组的索引 1 指定纵向分辨率(通常为垂直分辨率)。数组的索引 2 指定分辨率是每英寸还是每厘米。 3 表示每英寸的点数。 4 表示每厘米的点数。请注意,1.1 版本的打印实现(Toolkit.getPrintJob)要求进纸和横向分辨率相同。不指定该属性等同于调用 setPrinterResolution(72)。
      参数:
      printerResolution - 一个包含 3 个元素的整数数组。第一个元素必须大于 0。第二个元素必须大于 0。第三个元素必须是 34
      抛出:
      IllegalArgumentException - 如果违反上述条件中的一个或多个。
    • setPrinterResolution

      public void setPrinterResolution(int printerResolution)
      指定使用这些属性的页面的横向和纵向打印分辨率(每英寸的点数)。两个分辨率使用相同的值。实际分辨率将由实现的限制和目标打印机确定。不指定该属性等同于指定 72
      参数:
      printerResolution - 大于 0 的整数。
      抛出:
      IllegalArgumentException - 如果 printerResolution 小于或等于 0。
    • setPrinterResolutionToDefault

      public void setPrinterResolutionToDefault()
      将使用这些属性的页面的打印分辨率设置为默认值。默认值为横向和纵向分辨率均为 72 dpi。
    • equals

      public boolean equals(Object obj)
      确定两个 PageAttributes 是否相等。

      仅当它们的每个属性都相等时,两个 PageAttributes 才相等。枚举类型的属性仅当字段引用相同的唯一枚举对象时才相等。这意味着别名媒体等于其基础唯一媒体。打印分辨率仅当进纸分辨率、横向分辨率和单位均相等时才相等。

      覆盖:
      equals 在类 Object
      参数:
      obj - 将检查其相等性的对象。
      返回:
      根据上述标准,obj 是否等于此 PageAttribute。
      参见:
    • hashCode

      public int hashCode()
      返回此 PageAttributes 的哈希码值。
      覆盖:
      hashCode 在类 Object
      返回:
      哈希码。
      参见:
    • toString

      public String toString()
      返回此 PageAttributes 的字符串表示形式。
      覆盖:
      toString 在类 Object
      返回:
      字符串表示形式。