# ipe::PdfParser Class Reference
[Ipe Base]

PDF parser. More...

`#include <ipepdfparser.h>`

List of all members.

## Public Member Functions

- PdfParser (DataSource &source)
- void getChar ()
- bool eos () const
- PdfToken token () const
- void getToken ()
- PdfObj * getObject ()
- PdfObj * getObjectDef ()
- PdfDict * getTrailer ()
- void skipXRef ()

## Detailed Description

PDF parser.

The parser understands the syntax of PDF files, but very little of its semantics. It is meant to be able to parse PDF documents created by Ipe for loading, and to extract information from PDF files created by Pdflatex.

The parser reads a PDF file sequentially from front to back, ignores the contents of 'xref' sections, stores only generation 0 objects, and stops after reading the first 'trailer' section (so it cannot deal with files with incremental updates). It cannot handle stream objects whose /Length entry has been deferred (using an indirect object).

## Constructor & Destructor Documentation

PdfParser::PdfParser | ( | DataSource & | source | ) |

Construct with a data source.

## Member Function Documentation

void ipe::PdfParser::getChar | ( |  | ) | `[inline]`

bool ipe::PdfParser::eos | ( |  | ) | const`[inline]`

PdfToken ipe::PdfParser::token | ( |  | ) | const`[inline]`

void PdfParser::getToken | ( |  | ) |

Read the next token from the input stream.

PdfObj * PdfParser::getObject | ( |  | ) |

Read one object from input stream.

PdfObj * PdfParser::getObjectDef | ( |  | ) |

Parse an object definition (current token is object number).

PdfDict * PdfParser::getTrailer | ( |  | ) |

Parse trailer dictionary (current token is 'trailer').

void PdfParser::skipXRef | ( |  | ) |

Skip xref table (current token is 'xref').

The documentation for this class was generated from the following files:

- ipepdfparser.h
- ipepdfparser.cpp