# Class PageFormat

java.lang.Object
java.awt.print.PageFormat

All Implemented Interfaces:
  `Cloneable`

public class PageFormat extends Object implements Cloneable
The `PageFormat` class describes the size and orientation of a page to be printed.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`LANDSCAPE`
The origin is at the bottom left of the paper with x running bottom to top and y running left to right.
`static final int`
`PORTRAIT`
The origin is at the top left of the paper with x running to the right and y running down the paper.
`static final int`
`REVERSE_LANDSCAPE`
The origin is at the top right of the paper with x running top to bottom and y running right to left.

## Constructor Summary

Constructors
Constructor
Description
`PageFormat()`
Creates a default, portrait-oriented `PageFormat`.

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
Makes a copy of this `PageFormat` with the same contents as this `PageFormat`.
`double`
`getHeight()`
Returns the height, in 1/72nds of an inch, of the page.
`double`
`getImageableHeight()`
Return the height, in 1/72nds of an inch, of the imageable area of the page.
`double`
`getImageableWidth()`
Returns the width, in 1/72nds of an inch, of the imageable area of the page.
`double`
`getImageableX()`
Returns the x coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`.
`double`
`getImageableY()`
Returns the y coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`.
`double[]`
`getMatrix()`
Returns a transformation matrix that translates user space rendering to the requested orientation of the page.
`int`
`getOrientation()`
Returns the orientation of this `PageFormat`.
`Paper`
`getPaper()`
Returns a copy of the `Paper` object associated with this `PageFormat`.
`double`
`getWidth()`
Returns the width, in 1/72nds of an inch, of the page.
`void`
`setOrientation(int orientation)`
Sets the page orientation.
`void`
`setPaper(Paper paper)`
Sets the `Paper` object for this `PageFormat`.

### Methods declared in class Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### LANDSCAPE

@Native public static final int LANDSCAPE
The origin is at the bottom left of the paper with x running bottom to top and y running left to right. Note that this is not the Macintosh landscape but is the Window's and PostScript landscape.

See Also:
  - Constant Field Values

### PORTRAIT

@Native public static final int PORTRAIT
The origin is at the top left of the paper with x running to the right and y running down the paper.

See Also:
  - Constant Field Values

### REVERSE_LANDSCAPE

@Native public static final int REVERSE_LANDSCAPE
The origin is at the top right of the paper with x running top to bottom and y running right to left. Note that this is the Macintosh landscape.

See Also:
  - Constant Field Values

## Constructor Details

### PageFormat

public PageFormat()
Creates a default, portrait-oriented `PageFormat`.

## Method Details

### clone

public Object clone()
Makes a copy of this `PageFormat` with the same contents as this `PageFormat`.

Overrides:
  `clone` in class `Object`
Returns:
  a copy of this `PageFormat`.
See Also:
  - `Cloneable`

### getWidth

public double getWidth()
Returns the width, in 1/72nds of an inch, of the page. This method takes into account the orientation of the page when determining the width.

Returns:
  the width of the page.

### getHeight

public double getHeight()
Returns the height, in 1/72nds of an inch, of the page. This method takes into account the orientation of the page when determining the height.

Returns:
  the height of the page.

### getImageableX

public double getImageableX()
Returns the x coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`. This method takes into account the orientation of the page.

Returns:
  the x coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`.

### getImageableY

public double getImageableY()
Returns the y coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`. This method takes into account the orientation of the page.

Returns:
  the y coordinate of the upper left point of the imageable area of the `Paper` object associated with this `PageFormat`.

### getImageableWidth

public double getImageableWidth()
Returns the width, in 1/72nds of an inch, of the imageable area of the page. This method takes into account the orientation of the page.

Returns:
  the width of the page.

### getImageableHeight

public double getImageableHeight()
Return the height, in 1/72nds of an inch, of the imageable area of the page. This method takes into account the orientation of the page.

Returns:
  the height of the page.

### getPaper

public Paper getPaper()
Returns a copy of the `Paper` object associated with this `PageFormat`. Changes made to the `Paper` object returned from this method do not affect the `Paper` object of this `PageFormat`. To update the `Paper` object of this `PageFormat`, create a new `Paper` object and set it into this `PageFormat` by using the `setPaper(Paper)` method.

Returns:
  a copy of the `Paper` object associated with this `PageFormat`.
See Also:
  - `setPaper(Paper)`

### setPaper

public void setPaper(Paper paper)
Sets the `Paper` object for this `PageFormat`.

Parameters:
  `paper` - the `Paper` object to which to set the `Paper` object for this `PageFormat`.
Throws:
  `NullPointerException` - a null paper instance was passed as a parameter.
See Also:
  - `getPaper()`

### setOrientation

public void setOrientation(int orientation) throws IllegalArgumentException
Sets the page orientation. `orientation` must be one of the constants: PORTRAIT, LANDSCAPE, or REVERSE_LANDSCAPE.

Parameters:
  `orientation` - the new orientation for the page
Throws:
  `IllegalArgumentException` - if an unknown orientation was requested
See Also:
  - `getOrientation()`

### getOrientation

public int getOrientation()
Returns the orientation of this `PageFormat`.

Returns:
  this `PageFormat` object's orientation.
See Also:
  - `setOrientation(int)`

### getMatrix

public double[] getMatrix()
Returns a transformation matrix that translates user space rendering to the requested orientation of the page. The values are placed into the array as { m00, m10, m01, m11, m02, m12} in the form required by the `AffineTransform` constructor.

Returns:
  the matrix used to translate user space rendering to the orientation of the page.
See Also:
  - `AffineTransform`