com.itextpdf.text.pdf
Class PdfPageLabels

java.lang.Object
  extended by com.itextpdf.text.pdf.PdfPageLabels

public class PdfPageLabels
extends Object

Page labels are used to identify each page visually on the screen or in print.


Nested Class Summary
static class PdfPageLabels.PdfPageLabelFormat
           
 
Field Summary
static int DECIMAL_ARABIC_NUMERALS
          Logical pages will have the form 1,2,3,...
static int EMPTY
          No logical page numbers are generated but fixed text may still exist
static int LOWERCASE_LETTERS
          Logical pages will have the form of uppercase letters (a to z for the first 26 pages, aa to zz for the next 26, and so on)
static int LOWERCASE_ROMAN_NUMERALS
          Logical pages will have the form i,ii,iii,iv,...
static int UPPERCASE_LETTERS
          Logical pages will have the form of uppercase letters (A to Z for the first 26 pages, AA to ZZ for the next 26, and so on)
static int UPPERCASE_ROMAN_NUMERALS
          Logical pages will have the form I,II,III,IV,...
 
Constructor Summary
PdfPageLabels()
          Creates a new PdfPageLabel with a default logical page 1
 
Method Summary
 void addPageLabel(int page, int numberStyle)
          Adds or replaces a page label.
 void addPageLabel(int page, int numberStyle, String text)
          Adds or replaces a page label.
 void addPageLabel(int page, int numberStyle, String text, int firstPage)
          Adds or replaces a page label.
 void addPageLabel(PdfPageLabels.PdfPageLabelFormat format)
          Adds or replaces a page label.
static PdfPageLabels.PdfPageLabelFormat[] getPageLabelFormats(PdfReader reader)
          Retrieves the page labels from a PDF as an array of PdfPageLabels.PdfPageLabelFormat objects.
static String[] getPageLabels(PdfReader reader)
          Retrieves the page labels from a PDF as an array of String objects.
 void removePageLabel(int page)
          Removes a page label.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DECIMAL_ARABIC_NUMERALS

public static final int DECIMAL_ARABIC_NUMERALS
Logical pages will have the form 1,2,3,...

See Also:
Constant Field Values

UPPERCASE_ROMAN_NUMERALS

public static final int UPPERCASE_ROMAN_NUMERALS
Logical pages will have the form I,II,III,IV,...

See Also:
Constant Field Values

LOWERCASE_ROMAN_NUMERALS

public static final int LOWERCASE_ROMAN_NUMERALS
Logical pages will have the form i,ii,iii,iv,...

See Also:
Constant Field Values

UPPERCASE_LETTERS

public static final int UPPERCASE_LETTERS
Logical pages will have the form of uppercase letters (A to Z for the first 26 pages, AA to ZZ for the next 26, and so on)

See Also:
Constant Field Values

LOWERCASE_LETTERS

public static final int LOWERCASE_LETTERS
Logical pages will have the form of uppercase letters (a to z for the first 26 pages, aa to zz for the next 26, and so on)

See Also:
Constant Field Values

EMPTY

public static final int EMPTY
No logical page numbers are generated but fixed text may still exist

See Also:
Constant Field Values
Constructor Detail

PdfPageLabels

public PdfPageLabels()
Creates a new PdfPageLabel with a default logical page 1

Method Detail

addPageLabel

public void addPageLabel(int page,
                         int numberStyle,
                         String text,
                         int firstPage)
Adds or replaces a page label.

Parameters:
page - the real page to start the numbering. First page is 1
numberStyle - the numbering style such as LOWERCASE_ROMAN_NUMERALS
text - the text to prefix the number. Can be null or empty
firstPage - the first logical page number

addPageLabel

public void addPageLabel(int page,
                         int numberStyle,
                         String text)
Adds or replaces a page label. The first logical page has the default of 1.

Parameters:
page - the real page to start the numbering. First page is 1
numberStyle - the numbering style such as LOWERCASE_ROMAN_NUMERALS
text - the text to prefix the number. Can be null or empty

addPageLabel

public void addPageLabel(int page,
                         int numberStyle)
Adds or replaces a page label. There is no text prefix and the first logical page has the default of 1.

Parameters:
page - the real page to start the numbering. First page is 1
numberStyle - the numbering style such as LOWERCASE_ROMAN_NUMERALS

addPageLabel

public void addPageLabel(PdfPageLabels.PdfPageLabelFormat format)
Adds or replaces a page label.


removePageLabel

public void removePageLabel(int page)
Removes a page label. The first page label can not be removed, only changed.

Parameters:
page - the real page to remove

getPageLabels

public static String[] getPageLabels(PdfReader reader)
Retrieves the page labels from a PDF as an array of String objects.

Parameters:
reader - a PdfReader object that has the page labels you want to retrieve
Returns:
a String array or null if no page labels are present

getPageLabelFormats

public static PdfPageLabels.PdfPageLabelFormat[] getPageLabelFormats(PdfReader reader)
Retrieves the page labels from a PDF as an array of PdfPageLabels.PdfPageLabelFormat objects.

Parameters:
reader - a PdfReader object that has the page labels you want to retrieve
Returns:
a PdfPageLabelEntry array, containing an entry for each format change or null if no page labels are present