com.itextpdf.text
Class Document

java.lang.Object
  extended by com.itextpdf.text.Document
All Implemented Interfaces:
DocListener, ElementListener, IAccessibleElement, EventListener
Direct Known Subclasses:
PdfDocument

public class Document
extends Object
implements DocListener, IAccessibleElement

A generic Document class.

All kinds of Text-elements can be added to a HTMLDocument. The Document signals all the listeners when an element has been added.

Remark:

  1. Once a document is created you can add some meta information.
  2. You can also set the headers/footers.
  3. You have to open the document before you can write content.
  4. You can only write content (no more meta-formation!) once a document is opened.
  5. When you change the header/footer on a certain page, this will be effective starting on the next page.
  6. After closing the document, every listener (as well as its OutputStream) is closed too.
Example:
// creation of the document with a certain size and certain margins
 Document document = new Document(PageSize.A4, 50, 50, 50, 50);
  try {
   // creation of the different writers
   HtmlWriter.getInstance(document , System.out);
   PdfWriter.getInstance(document , new FileOutputStream("text.pdf"));
   // we add some meta information to the document
   document.addAuthor("Bruno Lowagie"); 
   document.addSubject("This is the result of a Test."); 
   // we open the document for writing
   document.open(); 
   document.add(new Paragraph("Hello world"));
  } catch(DocumentException de) {
   System.err.println(de.getMessage());
  }
  document.close();
 


Field Summary
protected  HashMap<PdfName,PdfObject> accessibleAttributes
           
protected  int chapternumber
          This is a chapter number in case ChapterAutoNumber is used.
protected  boolean close
          Has the document already been closed?
static boolean compress
          Allows the pdf documents to be produced without compression for debugging purposes.
protected  String htmlStyleClass
          Style class in HTML body tag
protected  AccessibleElementId id
           
protected  String javaScript_onLoad
          Content of JavaScript onLoad function
protected  String javaScript_onUnLoad
          Content of JavaScript onUnLoad function
protected  ArrayList<DocListener> listeners
          The DocListener.
protected  float marginBottom
          margin in y direction starting from the bottom
protected  float marginLeft
          margin in x direction starting from the left
protected  boolean marginMirroring
          mirroring of the left/right margins
protected  boolean marginMirroringTopBottom
          mirroring of the top/bottom margins
protected  float marginRight
          margin in x direction starting from the right
protected  float marginTop
          margin in y direction starting from the top
protected  boolean open
          Is the document open or not?
protected  int pageN
          Current pagenumber
protected  Rectangle pageSize
          The size of the page.
static boolean plainRandomAccess
          When true the file access is not done through a memory mapped file.
protected  PdfName role
           
static float wmfFontCorrection
          Scales the WMF font size.
 
Constructor Summary
Document()
          Constructs a new Document -object.
Document(Rectangle pageSize)
          Constructs a new Document -object.
Document(Rectangle pageSize, float marginLeft, float marginRight, float marginTop, float marginBottom)
          Constructs a new Document -object.
 
Method Summary
 boolean add(Element element)
          Adds an Element to the Document.
 boolean addAuthor(String author)
          Adds the author to a Document.
 boolean addCreationDate()
          Adds the current date and time to a Document.
 boolean addCreator(String creator)
          Adds the creator to a Document.
 void addDocListener(DocListener listener)
          Adds a DocListener to the Document.
 boolean addHeader(String name, String content)
          Adds a user defined header to the document.
 boolean addKeywords(String keywords)
          Adds the keywords to a Document.
 boolean addLanguage(String language)
          Adds a language to th document.
 boolean addProducer()
          Adds the producer to a Document.
 boolean addSubject(String subject)
          Adds the subject to a Document.
 boolean addTitle(String title)
          Adds the title to a Document.
 float bottom()
          Returns the lower left y-coordinate.
 float bottom(float margin)
          Returns the lower left y-coordinate, considering a given margin.
 float bottomMargin()
          Returns the bottom margin.
 void close()
          Closes the document.
 PdfObject getAccessibleAttribute(PdfName key)
          Get the attribute of accessible element (everything in A dictionary + Lang, Alt, ActualText, E).
 HashMap<PdfName,PdfObject> getAccessibleAttributes()
          Gets all the properties of accessible element.
 String getHtmlStyleClass()
          Gets the style class of the HTML body tag
 AccessibleElementId getId()
           
 String getJavaScript_onLoad()
          Gets the JavaScript onLoad command.
 String getJavaScript_onUnLoad()
          Gets the JavaScript onUnLoad command.
 int getPageNumber()
          Returns the current page number.
 Rectangle getPageSize()
          Gets the pagesize.
 PdfName getRole()
          Gets the role of the accessible element.
 boolean isInline()
           
 boolean isMarginMirroring()
          Gets the margin mirroring flag.
 boolean isOpen()
          Checks if the document is open.
 float left()
          Returns the lower left x-coordinate.
 float left(float margin)
          Returns the lower left x-coordinate considering a given margin.
 float leftMargin()
          Returns the left margin.
 boolean newPage()
          Signals that an new page has to be started.
 void open()
          Opens the document.
 void removeDocListener(DocListener listener)
          Removes a DocListener from the Document.
 void resetPageCount()
          Sets the page number to 0.
 float right()
          Returns the upper right x-coordinate.
 float right(float margin)
          Returns the upper right x-coordinate, considering a given margin.
 float rightMargin()
          Return the right margin.
 void setAccessibleAttribute(PdfName key, PdfObject value)
          Set the attribute of accessible element (everything in A dictionary + Lang, Alt, ActualText, E).
 void setHtmlStyleClass(String htmlStyleClass)
          Adds a style class to the HTML body tag
 void setId(AccessibleElementId id)
           
 void setJavaScript_onLoad(String code)
          Adds a JavaScript onLoad function to the HTML body tag
 void setJavaScript_onUnLoad(String code)
          Adds a JavaScript onUnLoad function to the HTML body tag
 boolean setMarginMirroring(boolean marginMirroring)
          Set the margin mirroring.
 boolean setMarginMirroringTopBottom(boolean marginMirroringTopBottom)
          Set the margin mirroring.
 boolean setMargins(float marginLeft, float marginRight, float marginTop, float marginBottom)
          Sets the margins.
 void setPageCount(int pageN)
          Sets the page number.
 boolean setPageSize(Rectangle pageSize)
          Sets the pagesize.
 void setRole(PdfName role)
          Sets the role of the accessiblee element.
 float top()
          Returns the upper right y-coordinate.
 float top(float margin)
          Returns the upper right y-coordinate, considering a given margin.
 float topMargin()
          Returns the top margin.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

compress

public static boolean compress
Allows the pdf documents to be produced without compression for debugging purposes.


plainRandomAccess

public static boolean plainRandomAccess
When true the file access is not done through a memory mapped file. Use it if the file is too big to be mapped in your address space.


wmfFontCorrection

public static float wmfFontCorrection
Scales the WMF font size. The default value is 0.86.


listeners

protected ArrayList<DocListener> listeners
The DocListener.

Since:
iText 5.1.0 changed from private to protected

open

protected boolean open
Is the document open or not?


close

protected boolean close
Has the document already been closed?


pageSize

protected Rectangle pageSize
The size of the page.


marginLeft

protected float marginLeft
margin in x direction starting from the left


marginRight

protected float marginRight
margin in x direction starting from the right


marginTop

protected float marginTop
margin in y direction starting from the top


marginBottom

protected float marginBottom
margin in y direction starting from the bottom


marginMirroring

protected boolean marginMirroring
mirroring of the left/right margins


marginMirroringTopBottom

protected boolean marginMirroringTopBottom
mirroring of the top/bottom margins

Since:
2.1.6

javaScript_onLoad

protected String javaScript_onLoad
Content of JavaScript onLoad function


javaScript_onUnLoad

protected String javaScript_onUnLoad
Content of JavaScript onUnLoad function


htmlStyleClass

protected String htmlStyleClass
Style class in HTML body tag


pageN

protected int pageN
Current pagenumber


chapternumber

protected int chapternumber
This is a chapter number in case ChapterAutoNumber is used.


role

protected PdfName role

accessibleAttributes

protected HashMap<PdfName,PdfObject> accessibleAttributes

id

protected AccessibleElementId id
Constructor Detail

Document

public Document()
Constructs a new Document -object.


Document

public Document(Rectangle pageSize)
Constructs a new Document -object.

Parameters:
pageSize - the pageSize

Document

public Document(Rectangle pageSize,
                float marginLeft,
                float marginRight,
                float marginTop,
                float marginBottom)
Constructs a new Document -object.

Parameters:
pageSize - the pageSize
marginLeft - the margin on the left
marginRight - the margin on the right
marginTop - the margin on the top
marginBottom - the margin on the bottom
Method Detail

addDocListener

public void addDocListener(DocListener listener)
Adds a DocListener to the Document.

Parameters:
listener - the new DocListener.

removeDocListener

public void removeDocListener(DocListener listener)
Removes a DocListener from the Document.

Parameters:
listener - the DocListener that has to be removed.

add

public boolean add(Element element)
            throws DocumentException
Adds an Element to the Document.

Specified by:
add in interface ElementListener
Parameters:
element - the Element to add
Returns:
true if the element was added, false if not
Throws:
DocumentException - when a document isn't open yet, or has been closed

open

public void open()
Opens the document.

Once the document is opened, you can't write any Header- or Meta-information anymore. You have to open the document before you can begin to add content to the body of the document.

Specified by:
open in interface DocListener

setPageSize

public boolean setPageSize(Rectangle pageSize)
Sets the pagesize.

Specified by:
setPageSize in interface DocListener
Parameters:
pageSize - the new pagesize
Returns:
a boolean

setMargins

public boolean setMargins(float marginLeft,
                          float marginRight,
                          float marginTop,
                          float marginBottom)
Sets the margins.

Specified by:
setMargins in interface DocListener
Parameters:
marginLeft - the margin on the left
marginRight - the margin on the right
marginTop - the margin on the top
marginBottom - the margin on the bottom
Returns:
a boolean

newPage

public boolean newPage()
Signals that an new page has to be started.

Specified by:
newPage in interface DocListener
Returns:
true if the page was added, false if not.

resetPageCount

public void resetPageCount()
Sets the page number to 0.

Specified by:
resetPageCount in interface DocListener

setPageCount

public void setPageCount(int pageN)
Sets the page number.

Specified by:
setPageCount in interface DocListener
Parameters:
pageN - the new page number

getPageNumber

public int getPageNumber()
Returns the current page number.

Returns:
the current page number

close

public void close()
Closes the document.

Once all the content has been written in the body, you have to close the body. After that nothing can be written to the body anymore.

Specified by:
close in interface DocListener

addHeader

public boolean addHeader(String name,
                         String content)
Adds a user defined header to the document.

Parameters:
name - the name of the header
content - the content of the header
Returns:
true if successful, false otherwise

addTitle

public boolean addTitle(String title)
Adds the title to a Document.

Parameters:
title - the title
Returns:
true if successful, false otherwise

addSubject

public boolean addSubject(String subject)
Adds the subject to a Document.

Parameters:
subject - the subject
Returns:
true if successful, false otherwise

addKeywords

public boolean addKeywords(String keywords)
Adds the keywords to a Document.

Parameters:
keywords - adds the keywords to the document
Returns:
true if successful, false otherwise

addAuthor

public boolean addAuthor(String author)
Adds the author to a Document.

Parameters:
author - the name of the author
Returns:
true if successful, false otherwise

addCreator

public boolean addCreator(String creator)
Adds the creator to a Document.

Parameters:
creator - the name of the creator
Returns:
true if successful, false otherwise

addProducer

public boolean addProducer()
Adds the producer to a Document.

Returns:
true if successful, false otherwise

addLanguage

public boolean addLanguage(String language)
Adds a language to th document. Required for PDF/UA compatible documents.

Parameters:
language -
Returns:
true if successfull, false otherwise

addCreationDate

public boolean addCreationDate()
Adds the current date and time to a Document.

Returns:
true if successful, false otherwise

leftMargin

public float leftMargin()
Returns the left margin.

Returns:
the left margin

rightMargin

public float rightMargin()
Return the right margin.

Returns:
the right margin

topMargin

public float topMargin()
Returns the top margin.

Returns:
the top margin

bottomMargin

public float bottomMargin()
Returns the bottom margin.

Returns:
the bottom margin

left

public float left()
Returns the lower left x-coordinate.

Returns:
the lower left x-coordinate

right

public float right()
Returns the upper right x-coordinate.

Returns:
the upper right x-coordinate

top

public float top()
Returns the upper right y-coordinate.

Returns:
the upper right y-coordinate

bottom

public float bottom()
Returns the lower left y-coordinate.

Returns:
the lower left y-coordinate

left

public float left(float margin)
Returns the lower left x-coordinate considering a given margin.

Parameters:
margin - a margin
Returns:
the lower left x-coordinate

right

public float right(float margin)
Returns the upper right x-coordinate, considering a given margin.

Parameters:
margin - a margin
Returns:
the upper right x-coordinate

top

public float top(float margin)
Returns the upper right y-coordinate, considering a given margin.

Parameters:
margin - a margin
Returns:
the upper right y-coordinate

bottom

public float bottom(float margin)
Returns the lower left y-coordinate, considering a given margin.

Parameters:
margin - a margin
Returns:
the lower left y-coordinate

getPageSize

public Rectangle getPageSize()
Gets the pagesize.

Returns:
the page size

isOpen

public boolean isOpen()
Checks if the document is open.

Returns:
true if the document is open

setJavaScript_onLoad

public void setJavaScript_onLoad(String code)
Adds a JavaScript onLoad function to the HTML body tag

Parameters:
code - the JavaScript code to be executed on load of the HTML page

getJavaScript_onLoad

public String getJavaScript_onLoad()
Gets the JavaScript onLoad command.

Returns:
the JavaScript onLoad command

setJavaScript_onUnLoad

public void setJavaScript_onUnLoad(String code)
Adds a JavaScript onUnLoad function to the HTML body tag

Parameters:
code - the JavaScript code to be executed on unload of the HTML page

getJavaScript_onUnLoad

public String getJavaScript_onUnLoad()
Gets the JavaScript onUnLoad command.

Returns:
the JavaScript onUnLoad command

setHtmlStyleClass

public void setHtmlStyleClass(String htmlStyleClass)
Adds a style class to the HTML body tag

Parameters:
htmlStyleClass - the style class for the HTML body tag

getHtmlStyleClass

public String getHtmlStyleClass()
Gets the style class of the HTML body tag

Returns:
the style class of the HTML body tag

setMarginMirroring

public boolean setMarginMirroring(boolean marginMirroring)
Set the margin mirroring. It will mirror right/left margins for odd/even pages.

Specified by:
setMarginMirroring in interface DocListener
Parameters:
marginMirroring - true to mirror the margins
Returns:
always true

setMarginMirroringTopBottom

public boolean setMarginMirroringTopBottom(boolean marginMirroringTopBottom)
Set the margin mirroring. It will mirror top/bottom margins for odd/even pages.

Specified by:
setMarginMirroringTopBottom in interface DocListener
Parameters:
marginMirroringTopBottom - true to mirror the margins
Returns:
always true
Since:
2.1.6

isMarginMirroring

public boolean isMarginMirroring()
Gets the margin mirroring flag.

Returns:
the margin mirroring flag

getAccessibleAttribute

public PdfObject getAccessibleAttribute(PdfName key)
Description copied from interface: IAccessibleElement
Get the attribute of accessible element (everything in A dictionary + Lang, Alt, ActualText, E).

Specified by:
getAccessibleAttribute in interface IAccessibleElement
Returns:

setAccessibleAttribute

public void setAccessibleAttribute(PdfName key,
                                   PdfObject value)
Description copied from interface: IAccessibleElement
Set the attribute of accessible element (everything in A dictionary + Lang, Alt, ActualText, E).

Specified by:
setAccessibleAttribute in interface IAccessibleElement

getAccessibleAttributes

public HashMap<PdfName,PdfObject> getAccessibleAttributes()
Description copied from interface: IAccessibleElement
Gets all the properties of accessible element.

Specified by:
getAccessibleAttributes in interface IAccessibleElement
Returns:

getRole

public PdfName getRole()
Description copied from interface: IAccessibleElement
Gets the role of the accessible element.

Specified by:
getRole in interface IAccessibleElement
Returns:

setRole

public void setRole(PdfName role)
Description copied from interface: IAccessibleElement
Sets the role of the accessiblee element. Set role to null if you don't want to tag this element. Note that all child elements won't also be tagged.

Specified by:
setRole in interface IAccessibleElement

getId

public AccessibleElementId getId()
Specified by:
getId in interface IAccessibleElement

setId

public void setId(AccessibleElementId id)
Specified by:
setId in interface IAccessibleElement

isInline

public boolean isInline()
Specified by:
isInline in interface IAccessibleElement


Copyright © 2014. All Rights Reserved.