模块 java.desktop

类 MediaPrintableArea

java.lang.Object
javax.print.attribute.standard.MediaPrintableArea
所有已实现的接口:
Serializable , Attribute , DocAttribute , PrintJobAttribute , PrintRequestAttribute

public final class MediaPrintableArea extends Object implements DocAttribute , PrintRequestAttribute , PrintJobAttribute
MediaPrintableArea 是一个打印属性,用于区分媒体的可打印区域和不可打印区域。

可打印区域被指定为一个矩形,位于介质的整体尺寸内。

由于打印机硬件限制,大多数打印机无法在介质的整个表面上打印。此类可用于查询假定打印作业的可接受值,并请求在打印作业中使用的可打印区域约束内的区域。

要查询可打印区域,客户端必须提供合适的上下文。如果不至少指定所用介质的尺寸,则无法获得有意义的可打印区域值。

该属性未根据距纸张边缘的距离进行描述,部分是为了强调该属性不独立于特定介质,但必须在选择其他属性的上下文中进行描述。此外,客户通常更方便地使用可打印区域。

硬件的最小页边距不仅是打印机的一个属性,还可能是介质尺寸、方向、介质类型和任何指定后处理的函数。 PrintService 提供了在合适的上下文中查询属性的支持值的方法:参见 PrintService.getSupportedAttributeValues()

矩形可打印区域的定义如下:无论请求上下文中指定的方向如何,(x,y) 原点都位于纵向模式下纸张的左上角。例如,纵向或横向 A4 纸的可打印区域的高度 > 宽度。

可打印区域属性的值在内部存储为以微米 (µm) 为单位的整数,其中 1 微米 = 10-6米 = 1/1000 毫米 = 1/25400 英寸。这允许精确表示尺寸,精度为 1/1000 毫米(= 1 µm)或 1/100 英寸(= 254 µm)。如果小数英寸以 2 的负次方表示,这允许尺寸精确地表示为 1/8 英寸(= 3175 µm)而不是 1/16 英寸(因为 1/16 英寸不等于整数)微米)。

IPP 兼容性:MediaPrintableArea 不是 IPP 属性。

参见:
  • 字段摘要

    字段
    修饰符和类型
    Field
    描述
    static final int
    以英寸 (in) 为单位表示的值。
    static final int
    数值以毫米 (mm) 为单位表示。
  • 构造方法总结

    构造方法
    构造方法
    描述
    MediaPrintableArea(float x, float y, float w, float h, int units)
    从浮点值构造一个 MediaPrintableArea 对象。
    MediaPrintableArea(int x, int y, int w, int h, int units)
    从整数值构造一个 MediaPrintableArea 对象。
  • 方法总结

    修饰符和类型
    方法
    描述
    boolean
    equals(Object object)
    返回此媒体边距属性是否等效于传入的对象。
    final Class<? extends Attribute>
    获取将用作此打印属性值的“类别”的打印属性类。
    float
    getHeight(int units)
    获取指定单位的可打印区域的height
    final String
    获取此属性值是其实例的类别的名称。
    float[]
    getPrintableArea(int units)
    x, y, w, h 的顺序获取可打印区域作为 4 个值的数组。
    float
    getWidth(int units)
    获取指定单位的可打印区域的width
    float
    getX(int units)
    以指定单位获取可打印区域原点的x位置。
    float
    getY(int units)
    以指定单位获取可打印区域原点的 y 位置。
    int
    返回此属性的哈希码值。
    以毫米为单位返回此矩形尺寸属性的字符串版本。
    toString(int units, String unitsName)
    以给定单位返回此矩形尺寸属性的字符串版本。

    在类 java.lang.Object 中声明的方法

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • 字段详细信息

    • INCH

      public static final int INCH
      以英寸 (in) 为单位表示的值。它实际上是将英寸乘以得到 µm (25400) 的转换因子。
      参见:
    • MM

      public static final int MM
      数值以毫米 (mm) 为单位表示。它实际上是将 mm 乘以得到 µm (1000) 的转换因子。
      参见:
  • 构造方法详细信息

    • MediaPrintableArea

      public MediaPrintableArea(float x, float y, float w, float h, int units)
      从浮点值构造一个 MediaPrintableArea 对象。
      参数:
      x - 可打印 x
      y - 可打印 y
      w - 可打印宽度
      h - 可打印高度
      units - 其中表示值
      抛出:
      IllegalArgumentException - 如果 x < 0y < 0w <= 0h <= 0units < 1
    • MediaPrintableArea

      public MediaPrintableArea(int x, int y, int w, int h, int units)
      从整数值构造一个 MediaPrintableArea 对象。
      参数:
      x - 可打印 x
      y - 可打印 y
      w - 可打印宽度
      h - 可打印高度
      units - 其中表示值
      抛出:
      IllegalArgumentException - 如果 x < 0y < 0w <= 0h <= 0units < 1
  • 方法详情

    • getPrintableArea

      public float[] getPrintableArea(int units)
      x, y, w, h 的顺序获取可打印区域作为 4 个值的数组。返回的值采用给定的单位。
      参数:
      units - 单位换算系数,例如 INCH MM
      返回:
      可打印区域作为指定单位的 x, y, w, h 数组
      抛出:
      IllegalArgumentException - 如果 units < 1
    • getX

      public float getX(int units)
      以指定单位获取可打印区域原点的x位置。
      参数:
      units - 单位换算系数,例如 INCH MM
      返回:
      x 指定单位中可打印区域原点的位置
      抛出:
      IllegalArgumentException - 如果 units < 1
    • getY

      public float getY(int units)
      以指定单位获取可打印区域原点的 y 位置。
      参数:
      units - 单位换算系数,例如 INCH MM
      返回:
      y 指定单位中可打印区域原点的位置
      抛出:
      IllegalArgumentException - 如果 units < 1
    • getWidth

      public float getWidth(int units)
      获取指定单位的可打印区域的width
      参数:
      units - 单位换算系数,例如 INCH MM
      返回:
      width 指定单位的可打印区域
      抛出:
      IllegalArgumentException - 如果 units < 1
    • getHeight

      public float getHeight(int units)
      获取指定单位的可打印区域的height
      参数:
      units - 单位换算系数,例如 INCH MM
      返回:
      height 指定单位的可打印区域
      抛出:
      IllegalArgumentException - 如果 units < 1
    • equals

      public boolean equals(Object  object)
      返回此媒体边距属性是否等效于传入的对象。要等效,必须满足以下所有条件:
      1. object 不是 null
      2. object 是类 MediaPrintableArea 的实例。
      3. 原点和尺寸相同。
      重写:
      equals 在类 Object
      参数:
      object - Object 比较
      返回:
      true 如果 object 相当于此媒体边距属性,false 否则
      参见:
    • getCategory

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

      对于类 MediaPrintableArea ,类别是类 MediaPrintableArea 本身。

      指定者:
      getCategory 在接口 Attribute
      返回:
      打印属性类(类别),类java.lang.Class 的一个实例
    • getName

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

      对于类 MediaPrintableArea,类别名称是 "media-printable-area"

      这不是 IPP V1.1 属性。

      指定者:
      getName 在接口 Attribute
      返回:
      属性类别名称
    • toString

      public String  toString(int units, String  unitsName)
      以给定单位返回此矩形尺寸属性的字符串版本。
      参数:
      units - 单位换算系数,例如 INCH MM
      unitsName - 单位名称字符串,例如 "in""mm" 。如果 null ,则没有单位名称附加到结果
      返回:
      此二维尺寸属性的字符串版本
      抛出:
      IllegalArgumentException - 如果 units < 1
    • toString

      public String  toString()
      以毫米为单位返回此矩形尺寸属性的字符串版本。
      重写:
      toString 在类 Object
      返回:
      对象的字符串表示形式。
    • hashCode

      public int hashCode()
      返回此属性的哈希码值。
      重写:
      hashCode 在类 Object
      返回:
      此对象的哈希码值。
      参见: