## com.lowagie.text.xml
Class SAXiTextHandler

    java.lang.Object
      org.xml.sax.helpers.DefaultHandler
          com.lowagie.text.xml.SAXiTextHandler

All Implemented Interfaces:
  org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

Direct Known Subclasses:
  SAXmyHandler, SAXmyHtmlHandler

    public class SAXiTextHandler

extends org.xml.sax.helpers.DefaultHandler

This class is a Handler that controls the iText XML to PDF conversion. Subclass it, if you want to change the way iText translates XML to PDF.

Field Summary
`private BaseFont` `bf`
`(package private) float` `bottomMargin` current margin of a page.
`protected int` `chapters` Counts the number of chapters in this document.
`protected boolean` `controlOpenClose` This is a flag that can be set, if you want to open and close the Document-object yourself.
`protected Chunk` `currentChunk` This is the current chunk to which characters can be added.
`protected DocListener` `document` This is the resulting document.
`protected boolean` `ignore` This is the current chunk to which characters can be added.
`(package private) float` `leftMargin` current margin of a page.
`protected java.util.HashMap` `myTags` This hashmap contains all the custom keys and peers.
`(package private) float` `rightMargin` current margin of a page.
`protected java.util.Stack` `stack` This is a `Stack` of objects, waiting to be added to the document.
`(package private) float` `topMargin` current margin of a page.

Constructor Summary
`SAXiTextHandler(DocListener document)`
`SAXiTextHandler(DocListener document, java.util.HashMap myTags)`
`SAXiTextHandler(DocListener document, HtmlTagMap myTags)`
`SAXiTextHandler(DocListener document, HtmlTagMap myTags, BaseFont bf)`

Method Summary
`protected void` `addImage(Image img)`
`void` `characters(char[] ch, int start, int length)` This method gets called when characters are encountered.
`void` `endElement(java.lang.String uri, java.lang.String lname, java.lang.String name)` This method gets called when an end tag is encountered.
`void` `handleEndingTags(java.lang.String name)` This method deals with the starting tags.
`void` `handleStartingTags(java.lang.String name, java.util.Properties attributes)` This method deals with the starting tags.
`void` `ignorableWhitespace(char[] ch, int start, int length)` This method gets called when ignorable white space encountered.
`protected boolean` `isDocumentRoot(java.lang.String tag)` Checks if a certain tag corresponds with the roottag.
`private boolean` `isNewline(java.lang.String tag)` Checks if a certain tag corresponds with the newpage-tag.
`private boolean` `isNewpage(java.lang.String tag)` Checks if a certain tag corresponds with the newpage-tag.
`void` `setBaseFont(BaseFont bf)` Sets the font that has to be used.
`void` `setControlOpenClose(boolean controlOpenClose)` Sets the parameter that allows you to enable/disable the control over the Document.open() and Document.close() method.
`void` `startElement(java.lang.String uri, java.lang.String lname, java.lang.String name, org.xml.sax.Attributes attrs)` This method gets called when a start tag is encountered.

Methods inherited from class org.xml.sax.helpers.DefaultHandler
`endDocument, endPrefixMapping, error, fatalError, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning`

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

Field Detail

### document

    protected DocListener document

  This is the resulting document.

### stack

    protected java.util.Stack stack

  This is a `Stack` of objects, waiting to be added to the document.

### chapters

    protected int chapters

  Counts the number of chapters in this document.

### currentChunk

    protected Chunk currentChunk

  This is the current chunk to which characters can be added.

### ignore

    protected boolean ignore

  This is the current chunk to which characters can be added.

### controlOpenClose

    protected boolean controlOpenClose

  This is a flag that can be set, if you want to open and close the Document-object yourself.

### topMargin

    float topMargin

  current margin of a page.

### rightMargin

    float rightMargin

  current margin of a page.

### leftMargin

    float leftMargin

  current margin of a page.

### bottomMargin

    float bottomMargin

  current margin of a page.

### myTags

    protected java.util.HashMap myTags

  This hashmap contains all the custom keys and peers.

### bf

    private BaseFont bf

Constructor Detail

### SAXiTextHandler

    public SAXiTextHandler(DocListener document)

Parameters:
  `document` -

### SAXiTextHandler

    public SAXiTextHandler(DocListener document,
                           HtmlTagMap myTags)

Parameters:
  `document` -
  `myTags` -

### SAXiTextHandler

    public SAXiTextHandler(DocListener document,
                           HtmlTagMap myTags,
                           BaseFont bf)

Parameters:
  `document` -
  `myTags` -
  `bf` -

### SAXiTextHandler

    public SAXiTextHandler(DocListener document,
                           java.util.HashMap myTags)

Parameters:
  `document` -
  `myTags` -

Method Detail

### setControlOpenClose

    public void setControlOpenClose(boolean controlOpenClose)

  Sets the parameter that allows you to enable/disable the control over the Document.open() and Document.close() method.

  If you set this parameter to true (= default), the parser will open the Document object when the start-root-tag is encountered and close it when the end-root-tag is met. If you set it to false, you have to open and close the Document object yourself.

  Parameters:
    `controlOpenClose` - set this to false if you plan to open/close the Document yourself

### startElement

    public void startElement(java.lang.String uri,
                             java.lang.String lname,
                             java.lang.String name,
                             org.xml.sax.Attributes attrs)

  This method gets called when a start tag is encountered.

  Specified by:
    `startElement` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `startElement` in class `org.xml.sax.helpers.DefaultHandler`
  Parameters:
    `uri` - the Uniform Resource Identifier
    `lname` - the local name (without prefix), or the empty string if Namespace processing is not being performed.
    `name` - the name of the tag that is encountered
    `attrs` - the list of attributes

### handleStartingTags

    public void handleStartingTags(java.lang.String name,
                                   java.util.Properties attributes)

  This method deals with the starting tags.

  Parameters:
    `name` - the name of the tag
    `attributes` - the list of attributes

### addImage

    protected void addImage(Image img)
                     throws java.util.EmptyStackException

  Throws:
    `java.util.EmptyStackException`

### ignorableWhitespace

    public void ignorableWhitespace(char[] ch,
                                    int start,
                                    int length)

  This method gets called when ignorable white space encountered.

  Specified by:
    `ignorableWhitespace` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `ignorableWhitespace` in class `org.xml.sax.helpers.DefaultHandler`
  Parameters:
    `ch` - an array of characters
    `start` - the start position in the array
    `length` - the number of characters to read from the array

### characters

    public void characters(char[] ch,
                           int start,
                           int length)

  This method gets called when characters are encountered.

  Specified by:
    `characters` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `characters` in class `org.xml.sax.helpers.DefaultHandler`
  Parameters:
    `ch` - an array of characters
    `start` - the start position in the array
    `length` - the number of characters to read from the array

### setBaseFont

    public void setBaseFont(BaseFont bf)

  Sets the font that has to be used.

  Parameters:
    `bf` -

### endElement

    public void endElement(java.lang.String uri,
                           java.lang.String lname,
                           java.lang.String name)

  This method gets called when an end tag is encountered.

  Specified by:
    `endElement` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `endElement` in class `org.xml.sax.helpers.DefaultHandler`
  Parameters:
    `uri` - the Uniform Resource Identifier
    `lname` - the local name (without prefix), or the empty string if Namespace processing is not being performed.
    `name` - the name of the tag that ends

### handleEndingTags

    public void handleEndingTags(java.lang.String name)

  This method deals with the starting tags.

  Parameters:
    `name` - the name of the tag

### isNewpage

    private boolean isNewpage(java.lang.String tag)

  Checks if a certain tag corresponds with the newpage-tag.

  Parameters:
    `tag` - a presumed tagname
  Returns:
    `true` or `false`

### isNewline

    private boolean isNewline(java.lang.String tag)

  Checks if a certain tag corresponds with the newpage-tag.

  Parameters:
    `tag` - a presumed tagname
  Returns:
    `true` or `false`

### isDocumentRoot

    protected boolean isDocumentRoot(java.lang.String tag)

  Checks if a certain tag corresponds with the roottag.

  Parameters:
    `tag` - a presumed tagname
  Returns:
    `true` if tag equals `itext` ,`false` otherwise.

Hosted by Hostbasket