Module  javafx.graphics
软件包  javafx.print

Class PageLayout



  • public final class PageLayout
    extends Object
    PageLayout封装了布局内容所需的信息。 报告的宽度和高度可以被认为等同于Window执行的剪辑。 获取PageLayout实例的应用程序将需要检查宽度和高度来执行布局和分页。 页面呈现不需要其他信息,如方向和正在使用的纸张以及该区域之外的边距。

    打印机通常具有无法打印的硬件边距。 在特定打印机的上下文中从PrinterJob获取的PageLayout实例将被正确地设置为在整个区域打印。 如果应用程序调整此边界之外的可打印区域,那么这些区域的渲染将被设备剪切。

    在这些硬件利润范围内,应用程序可能会定义其所需的任何可打印区域。 所得到的可打印区域将在打印时定义应用程序可用的页面的有效尺寸。

    将基于一台打印机配置的PageLayout应用到其他打印机上的作业可能无法正常工作,因为第二台打印机可能不支持相同的边距,甚至可能不支持同一纸张。 在这种情况下,必须对新的打印机验证PageLayout。

    PageLayout是不可变的。

    从以下版本开始:
    JavaFX 8.0
    • 方法详细信息

      • getPaper

        public Paper getPaper​()
        用纸。
        结果
        该纸用于此 PageLayout
      • getPrintableWidth

        public double getPrintableWidth​()
        考虑到方向,返回页面可打印区域的宽度尺寸,以1/72英寸为单位。

        可打印区域是宽度或高度减少每边所请求的边距。 如果请求的边距小于硬件边距,则可能会由设备削减渲染。

        由于返回的值表示方向,这意味着如果方向为LANDSCAPE或REVERSE_LANDSCAPE,则从底层纸张的高度减去左右边距,因为它旋转了90度。

        结果
        可打印宽度的点数。
      • getPrintableHeight

        public double getPrintableHeight​()
        考虑到方向,返回页面可打印区域的高度尺寸,以1/72英寸为单位。

        可打印区域是宽度或高度减少每边所请求的边距。 如果请求的边距小于硬件边距,则可能会由设备削减渲染。

        由于返回的值表示方向,这意味着如果方向为LANDSCAPE或REVERSE_LANDSCAPE,则从底层纸张的高度减去顶部和底部边距,因为它旋转了90度。

        结果
        可印刷高度分。
      • getLeftMargin

        public double getLeftMargin​()
        以点为单位返回页面布局的左边距。 该值位于PageLayout的方向。
        结果
        左边距点。
      • getRightMargin

        public double getRightMargin​()
        以分数返回页面布局的右边距。 该值位于PageLayout的方向。
        结果
        右边的点数。
      • getTopMargin

        public double getTopMargin​()
        以分数返回页面布局的上边距。 该值位于PageLayout的方向。
        结果
        顶点保证金。
      • getBottomMargin

        public double getBottomMargin​()
        以点为单位返回页面布局的底部边距。 该值位于PageLayout的方向。
        结果
        底边点数。
      • equals

        public boolean equals​(Object o)
        说明从类别复制: Object
        指示一些其他对象是否等于此。

        equals方法在非空对象引用上实现等价关系:

        • 自反性 :对于任何非空的参考值xx.equals(x)应该返回true
        • 它是对称的 :对于任何非空引用值xyx.equals(y)应该返回true当且仅当y.equals(x)回报true
        • 传递性 :对于任何非空引用值xy ,并z ,如果x.equals(y)回报truey.equals(z)回报true ,然后x.equals(z)应该返回true
        • 它是一致的 :对于任何非空引用值xy ,在多次调用x.equals(y)始终返回true或始终返回false ,没有设置中使用的信息equals比较上的对象被修改。
        • 对于任何非空的参考值xx.equals(null)应该返回false

        equals类方法Object实现对象上差别可能性最大的相等关系; 也就是说,对于任何非空参考值xy ,当且仅当xy引用相同对象( x == y具有值true )时,该方法返回true

        请注意,无论何时覆盖此方法,通常需要覆盖hashCode方法,以便维护hashCode方法的通用合同,其中声明相等的对象必须具有相等的哈希码。

        重写:
        equalsObject
        参数
        o - 与之比较的参考对象。
        结果
        true如果该对象与obj参数相同; false否则。
        另请参见:
        Object.hashCode()HashMap
      • hashCode

        public int hashCode​()
        描述从类别复制: Object
        返回对象的哈希码值。 支持这种方法有利于哈希表,如HashMap所提供的那样

        hashCode的总合同是:

        • 只要在执行Java应用程序时多次在同一个对象上调用该对象,则hashCode方法必须始终返回相同的整数,前提是修改了对象中equals比较中没有使用的信息。 该整数不需要从一个应用程序的执行到相同应用程序的另一个执行保持一致。
        • 如果根据equals(Object)方法两个对象相等,则在两个对象中的每个对象上调用hashCode方法必须产生相同的整数结果。
        • 要求如果两个对象根据Object.equals(java.lang.Object)方法不相等,那么在两个对象中的每个对象上调用hashCode方法必须产生不同的整数结果。 但是,程序员应该意识到,为不等对象生成不同的整数结果可能会提高哈希表的性能。

        尽可能多的合理实用,由类Object定义的hashCode方法确实为不同的对象返回不同的整数。 (在某个时间点,hashCode可能或可能不被实现为对象的存储器地址的某些功能。)

        重写:
        hashCodeObject
        结果
        该对象的哈希码值。
        另请参见:
        Object.equals(java.lang.Object)System.identityHashCode(java.lang.Object)
      • toString

        public String toString​()
        描述从类复制: Object
        返回对象的字符串表示形式。 一般来说, toString方法返回一个字符串,“文本地表示”此对象。 结果应该是一个简明扼要的表达,容易让人阅读。 建议所有子类覆盖此方法。

        toString类方法Object返回一个由类的名称,其中所述对象是其实例,该符号字符`的字符串@ ”,并且对象的哈希码的无符号的十六进制表示。 换句话说,这个方法返回一个等于下列值的字符串:

         getClass().getName() + '@' + Integer.toHexString(hashCode())
         
        重写:
        toStringObject
        结果
        对象的字符串表示形式。