Version 0.5
Added support for Embedded Files (annotations & named objects) Added support for ExtGStates when drawing initially only supports basic transparency Fixed reading values from nametrees Added support for named destinations Fixed a memory leak in PdfDestination::GetPage Pages do not know their page number inside of the document Fixed reading PdfActions from PDF files Moved filter implementations to PdfFiltersPrivate.h Added PdfFilter::CanEncode and PdfFilter::CanDecode Simpliefid PoDoFos handling of XRef tables Version 0.4 PdfImage now supports creating an image stream from a "raw bitmap" which can also be optionally Flate compressed Added some new Page-related methods to PdfDocument Append - append one document to another InsertPages - insert a range of pages from one document to another DeletePages - delete a range of pages Added new tool podofomerge for merging two PDFs together Added methods to get & set a document's PageMode Added methods to set a document's FullScreen mode Added methods to set all the various ViewerPreferences for a document Added methods to set the document's PageLayout Added Outline support modified podofoinfo to display them, if present Added a PdfDestination class Added PdfNamesTree class for handling the global named objects modified podofoinfo to display them, if present PdfPainter can draw bezier curves Added XCode project for building on Mac OS X fixed up conditionals in font code to enable building on MacOSX - but no font loading, YET Added support for writing linearized PDF Added support for garbage collection of unused objects Simplified PdfObject constructor Improved annotation support Added support to encode names and various name testcases Fixed ascent and descent of fonts Improved PdfImage API Added support for the creation of file identifiers which makes PoDoFo created PDF files work in more different PDF workflows PdfImage optionally takes ownership of buffers Fixed a major parser bug: The parser expected all objects in object streams to be of type dictionary. Version 0.3 TOTAL revamp of PdfObject & PdfVariant to enable clean/consistent object handling; Added new PdfDocument object - new high level object for reading & writing a PDF doc; TOTAL revamp of the PdfDocument, PdfWriter & PdfParser relationship PdfDocument is now hub for both reading and writing a document it holds the PdfVecObjects - the others just reference them. TOTAL revamp of PdfPainter now uses PDF coordinates - UserUnits from bottom/left added PdfPainterMM for mm-based coords supports user-specified float precision and writes out floats in an optimal manner supports "appending" mode for drawing on existing documents Improved handling of the /Info dict for both reading and writing PDFs; Added new test app - podofopdfinfo, which will be used to dump metadata, etc. from a PDF; Added PdfError::DebugMessage() as the official way to write out debugging info; updated all other debugging msgs to use this; Added PdfError::DebugEnabled() to enable/disable display of debug messages; Added tracking of file size in PdfParser; Minor tweak to Linearization handling - to enable getting the status from a doc; Added getting GetPdfVersionAsString() to PdfWriter; Added new info/object getting methods to PdfDocument; bool IsLinearized(); size_t FileSize(); PdfObject* GetStructTreeRoot(); PdfObject* GetMetadata(); PdfObject* GetOutlines(); PdfObject* GetAcroForm(); Updated pdfinfo & podofopdfinfo to call the new PdfDocument methods; Added PdfDictionary and PdfArray classes; Added new PdfPagesTree (inside of PdfDocument.cpp) for handling walking a /Pages tree; Added new GetPageCount() method to PdfDocument; Modifications to PdfPage to attach it to a PdfDocument & construct from a PdfObject; Added new Legal and A3 standard page sizes; Changed page coordinates to be PDF unit-based instead of 1/1000mm; Changed PdfRect to use PDF units and also use bottom instead of top; Added ability to go between PdfRect and PdfArray & also get string version of a PdfRect; Added support for PdfPage to return all the standard boxes (Media, Crop, etc); Added support for fetching inherited values from pages (eg. boxes, rotation, etc.) Added more methods to PdfPage; GetRotation(); GetNumAnnots(); Use Exceptions now instead of error codes; Removed Init from PdfOutputDevice; Removed Init from PdfParser; Added LZW Filter support; Added PdfElement as base class for PdfAction, PdfAnnotation and PdfPage; Fixed podofoimageextract, podofotxt2pdf and podofopdfinfo; Removed PdfSimpleWriter in favour of PdfDocument; Headers are now installed in includedir/podofo/; Added a new WatermarkTest demonstrates how to read an existing PDF and draw on each page Version 0.2 Improved Documentation; Added SetInformation for additional error information to PdfError; Fixed the underline color of text; Introduced PdfReference class; Fixed PdfStream::GetFilteredCopy; Improved handling of DecodeParms for filters; Fixed PDF files with more than one DecodeParms dictionary in one object; Added on demand loading of objects to the PdfParser; Ported to windows by Leonard Rosenthol; On demand loading of objects is now the default; Refactored PdfFilter interface so that filters are cached; Fixed multiple connected XRef tables through /Prev keys in the trailer; Fixed a number of compiler warnings; Replaced char*'s with std::strings in a number of classes; Added std::ostream support to PdfOutputDevice; Improvements to the ImageExtractor tool; Refactored PdfVariant so that it is easier to use; Version 0.1 (11 June 2006) Initial release; |