## com.lowagie.text.rtf.document
Class RtfPageSetting

    java.lang.Object
      com.lowagie.text.rtf.RtfElement
          com.lowagie.text.rtf.document.RtfPageSetting

All Implemented Interfaces:
  RtfBasicElement, RtfExtendedElement, RtfElementInterface

    public class RtfPageSetting

extends RtfElement
implements RtfExtendedElement

The RtfPageSetting stores the page size / page margins for a RtfDocument. INTERNAL CLASS - NOT TO BE USED DIRECTLY

Version:
  $Id:RtfPageSetting.java 3126 2008-02-07 20:30:46Z hallm $
Author:
  Mark Hall (Mark.Hall@mail.room3b.eu), Thomas Bickel (tmb99@inode.at)

Field Summary
`private boolean` `landscape` Whether the page is portrait or landscape
`private static byte[]` `LANDSCAPE` Constant for landscape
`private static byte[]` `MARGIN_BOTTOM` Constant for the bottom margin
`private static byte[]` `MARGIN_LEFT` Constant for the left margin
`private static byte[]` `MARGIN_RIGHT` Constant for the right margin
`private static byte[]` `MARGIN_TOP` Constant for the top margin
`private int` `marginBottom` The bottom margin to use
`private int` `marginLeft` The left margin to use
`private int` `marginRight` The right margin to use
`private int` `marginTop` The top margin to use
`private static byte[]` `PAGE_HEIGHT` Constant for the page width
`private static byte[]` `PAGE_WIDTH` Constant for the page height
`private int` `pageHeight` The page height to use
`private int` `pageWidth` The page width to use
`private static byte[]` `SECTION_MARGIN_BOTTOM` Constant for the section bottom margin
`private static byte[]` `SECTION_MARGIN_LEFT` Constant for the section left margin
`private static byte[]` `SECTION_MARGIN_RIGHT` Constant for the section right margin
`private static byte[]` `SECTION_MARGIN_TOP` Constant for the section top margin
`private static byte[]` `SECTION_PAGE_HEIGHT` Constant for the section page height
`private static byte[]` `SECTION_PAGE_WIDTH` Constant for the section page width

Fields inherited from class com.lowagie.text.rtf.RtfElement
`document, inHeader, inTable`

Fields inherited from interface com.lowagie.text.rtf.RtfBasicElement
`CLOSE_GROUP, COMMA_DELIMITER, DELIMITER, OPEN_GROUP, TWIPS_FACTOR`

Constructor Summary
`RtfPageSetting(RtfDocument doc)` Constructs a new RtfPageSetting object belonging to a RtfDocument.

Method Summary
`int` `getMarginBottom()` Gets the bottom margin
`int` `getMarginLeft()` Gets the left margin
`int` `getMarginRight()` Gets the right margin
`int` `getMarginTop()` Gets the top margin
`int` `getPageHeight()` Gets the page height
`int` `getPageWidth()` Gets the page width
`private boolean` `guessFormat(Rectangle pageSize, boolean rotate)` This method tries to fit the `Rectangle pageSize` to one of the predefined PageSize rectangles.
`private boolean` `rectEquals(Rectangle rect1, Rectangle rect2)` This method compares to Rectangles.
`void` `setMarginBottom(int marginBottom)` Sets the bottom margin
`void` `setMarginLeft(int marginLeft)` Sets the left margin to use
`void` `setMarginRight(int marginRight)` Sets the right margin to use
`void` `setMarginTop(int marginTop)` Sets the top margin to use
`void` `setPageHeight(int pageHeight)` Sets the page height to use
`void` `setPageSize(Rectangle pageSize)` Set the page size to use.
`void` `setPageWidth(int pageWidth)` Sets the page width to use
`void` `writeContent(java.io.OutputStream out)` unused
`void` `writeDefinition(java.io.OutputStream result)` Writes the page size / page margin definition
`void` `writeSectionDefinition(java.io.OutputStream result)` Writes the definition part for a new section

Methods inherited from class com.lowagie.text.rtf.RtfElement
`intToByteArray, isInTable, setInHeader, setInTable, setRtfDocument`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface com.lowagie.text.rtf.RtfBasicElement
`setInHeader, setInTable, setRtfDocument`

Field Detail

### PAGE_WIDTH

    private static final byte[] PAGE_WIDTH

  Constant for the page height

### PAGE_HEIGHT

    private static final byte[] PAGE_HEIGHT

  Constant for the page width

### MARGIN_LEFT

    private static final byte[] MARGIN_LEFT

  Constant for the left margin

### MARGIN_RIGHT

    private static final byte[] MARGIN_RIGHT

  Constant for the right margin

### MARGIN_TOP

    private static final byte[] MARGIN_TOP

  Constant for the top margin

### MARGIN_BOTTOM

    private static final byte[] MARGIN_BOTTOM

  Constant for the bottom margin

### LANDSCAPE

    private static final byte[] LANDSCAPE

  Constant for landscape

### SECTION_PAGE_WIDTH

    private static final byte[] SECTION_PAGE_WIDTH

  Constant for the section page width

### SECTION_PAGE_HEIGHT

    private static final byte[] SECTION_PAGE_HEIGHT

  Constant for the section page height

### SECTION_MARGIN_LEFT

    private static final byte[] SECTION_MARGIN_LEFT

  Constant for the section left margin

### SECTION_MARGIN_RIGHT

    private static final byte[] SECTION_MARGIN_RIGHT

  Constant for the section right margin

### SECTION_MARGIN_TOP

    private static final byte[] SECTION_MARGIN_TOP

  Constant for the section top margin

### SECTION_MARGIN_BOTTOM

    private static final byte[] SECTION_MARGIN_BOTTOM

  Constant for the section bottom margin

### pageWidth

    private int pageWidth

  The page width to use

### pageHeight

    private int pageHeight

  The page height to use

### marginLeft

    private int marginLeft

  The left margin to use

### marginRight

    private int marginRight

  The right margin to use

### marginTop

    private int marginTop

  The top margin to use

### marginBottom

    private int marginBottom

  The bottom margin to use

### landscape

    private boolean landscape

  Whether the page is portrait or landscape

Constructor Detail

### RtfPageSetting

    public RtfPageSetting(RtfDocument doc)

  Constructs a new RtfPageSetting object belonging to a RtfDocument.

  Parameters:
    `doc` - The RtfDocument this RtfPageSetting belongs to

Method Detail

### writeContent

    public void writeContent(java.io.OutputStream out)
                      throws java.io.IOException

  unused

  Specified by:
    `writeContent` in interface `RtfBasicElement`
  Specified by:
    `writeContent` in class `RtfElement`
  Parameters:
    `out` - The `OutputStream` to write the content to
  Throws:
    `java.io.IOException`

### writeDefinition

    public void writeDefinition(java.io.OutputStream result)
                         throws java.io.IOException

  Writes the page size / page margin definition

  Specified by:
    `writeDefinition` in interface `RtfExtendedElement`
  Parameters:
    `result` - The `OutputStream` to write the element definition to
  Throws:
    `java.io.IOException`

### writeSectionDefinition

    public void writeSectionDefinition(java.io.OutputStream result)
                                throws java.io.IOException

  Writes the definition part for a new section

  Throws:
    `java.io.IOException`

### getMarginBottom

    public int getMarginBottom()

  Gets the bottom margin

  Returns:
    Returns the bottom margin

### setMarginBottom

    public void setMarginBottom(int marginBottom)

  Sets the bottom margin

  Parameters:
    `marginBottom` - The bottom margin to use

### getMarginLeft

    public int getMarginLeft()

  Gets the left margin

  Returns:
    Returns the left margin

### setMarginLeft

    public void setMarginLeft(int marginLeft)

  Sets the left margin to use

  Parameters:
    `marginLeft` - The left margin to use

### getMarginRight

    public int getMarginRight()

  Gets the right margin

  Returns:
    Returns the right margin

### setMarginRight

    public void setMarginRight(int marginRight)

  Sets the right margin to use

  Parameters:
    `marginRight` - The right margin to use

### getMarginTop

    public int getMarginTop()

  Gets the top margin

  Returns:
    Returns the top margin

### setMarginTop

    public void setMarginTop(int marginTop)

  Sets the top margin to use

  Parameters:
    `marginTop` - The top margin to use

### getPageHeight

    public int getPageHeight()

  Gets the page height

  Returns:
    Returns the page height

### setPageHeight

    public void setPageHeight(int pageHeight)

  Sets the page height to use

  Parameters:
    `pageHeight` - The page height to use

### getPageWidth

    public int getPageWidth()

  Gets the page width

  Returns:
    Returns the page width

### setPageWidth

    public void setPageWidth(int pageWidth)

  Sets the page width to use

  Parameters:
    `pageWidth` - The page width to use

### setPageSize

    public void setPageSize(Rectangle pageSize)

  Set the page size to use. This method will use guessFormat to try to guess the correct page format. If no format could be guessed, the sizes from the pageSize are used and the landscape setting is determined by comparing width and height;

  Parameters:
    `pageSize` - The pageSize to use

### guessFormat

    private boolean guessFormat(Rectangle pageSize,
                                boolean rotate)

  This method tries to fit the `Rectangle pageSize` to one of the predefined PageSize rectangles. If a match is found the pageWidth and pageHeight will be set according to values determined from files generated by MS Word2000 and OpenOffice 641. If no match is found the method will try to match the rotated Rectangle by calling itself with the parameter rotate set to true.

  Parameters:
    `pageSize` - the page size for which to guess the correct format
    `rotate` - Whether we should try to rotate the size befor guessing the format
  Returns:
    `True` if the format was guessed, `false/`otherwise``

### rectEquals

    private boolean rectEquals(Rectangle rect1,
                               Rectangle rect2)

  This method compares to Rectangles. They are considered equal if width and height are the same

  Parameters:
    `rect1` - The first Rectangle to compare
    `rect2` - The second Rectangle to compare
  Returns:
    `True` if the Rectangles equal, `false` otherwise

Hosted by Hostbasket