com.lowagie.text.pdf

## Class PdfContentParser

- java.lang.Object
- - com.lowagie.text.pdf.PdfContentParser

-     public class PdfContentParser
      extends java.lang.Object

  Parses the page or template content.
  Author:
    Paulo Soares (psoares@consiste.pt)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `COMMAND_TYPE` Commands have this type.
    `private PRTokeniser` | `tokeniser` Holds value of property tokeniser.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PdfContentParser(PRTokeniser tokeniser)` Creates a new instance of PdfContentParser

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `PRTokeniser` | `getTokeniser()` Gets the tokeniser.
    `boolean` | `nextValidToken()` Reads the next token skipping over the comments.
    `java.util.ArrayList` | `parse(java.util.ArrayList ls)` Parses a single command from the content.
    `PdfArray` | `readArray()` Reads an array.
    `PdfDictionary` | `readDictionary()` Reads a dictionary.
    `PdfObject` | `readPRObject()` Reads a pdf object.
    `void` | `setTokeniser(PRTokeniser tokeniser)` Sets the tokeniser.

    - ### Methods inherited from class java.lang.Object

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

- - ### Field Detail

    - #### COMMAND_TYPE

          public static final int COMMAND_TYPE

      Commands have this type.
      See Also:
        Constant Field Values

    - #### tokeniser

          private PRTokeniser tokeniser

      Holds value of property tokeniser.

  - ### Constructor Detail

    - #### PdfContentParser

          public PdfContentParser(PRTokeniser tokeniser)

      Creates a new instance of PdfContentParser
      Parameters:
        `tokeniser` - the tokeniser with the content

  - ### Method Detail

    - #### parse

          public java.util.ArrayList parse(java.util.ArrayList ls)
                                    throws java.io.IOException

      Parses a single command from the content. Each command is output as an array of arguments having the command itself as the last element. The returned array will be empty if the end of content was reached.
      Parameters:
        `ls` - an `ArrayList` to use. It will be cleared before using. If it's `null` will create a new `ArrayList`
      Returns:
        the same `ArrayList` given as argument or a new one
      Throws:
        `java.io.IOException` - on error

    - #### getTokeniser

          public PRTokeniser getTokeniser()

      Gets the tokeniser.
      Returns:
        the tokeniser.

    - #### setTokeniser

          public void setTokeniser(PRTokeniser tokeniser)

      Sets the tokeniser.
      Parameters:
        `tokeniser` - the tokeniser

    - #### readDictionary

          public PdfDictionary readDictionary()
                                       throws java.io.IOException

      Reads a dictionary. The tokeniser must be positioned past the "<<" token.
      Returns:
        the dictionary
      Throws:
        `java.io.IOException` - on error

    - #### readArray

          public PdfArray readArray()
                             throws java.io.IOException

      Reads an array. The tokeniser must be positioned past the "[" token.
      Returns:
        an array
      Throws:
        `java.io.IOException` - on error

    - #### readPRObject

          public PdfObject readPRObject()
                                 throws java.io.IOException

      Reads a pdf object.
      Returns:
        the pdf object
      Throws:
        `java.io.IOException` - on error

    - #### nextValidToken

          public boolean nextValidToken()
                                 throws java.io.IOException

      Reads the next token skipping over the comments.
      Returns:
        `true` if a token was read, `false` if the end of content was reached
      Throws:
        `java.io.IOException` - on error