News Archive

New Versions2015-02-04

Today we released new versions of all SetaPDF components.

Most changes were done in the Core component to allow us to create a brand new text extraction component. For more details please see this news.

Release Notes and Downloads

Check the release notes of the components below.
Log in to download the latest version of the related packages!

switch product


Release date: 2015-02-04

Rev. 672 to 699

SetaPDF-Core Component
  • Added splitCharCodes() method to font classes.
  • Added methods to font classes to receive glyph width values by their character codes/bytes.
  • Implemented a detailed graphic state handling.
  • Added SetaPDF_Core_DataStructure_Rectangle::byRectangle() method to create instanced by other instances or by an instance of SetaPDF_Core_Geometry_Rectangle.
  • Implemented creation of custom metadata values in XMP packages using special characters (e.g. spaces) in their names.
  • Added annotation classes for Highlight and TextMarkup annotations.
  • Added helper method SetaPDF_Core_Encoding::strSplit().
  • Optimized font handling (implemented handling of existing Type0 and Type3 fonts).
  • Added Vector and Matrix classes.
  • Added Cmap class and resources.
  • Optimized handling and updated some predefined encodings.
  • Added methods to received character values by character codes.
  • Fixed resolving of undefined/nulled name trees.
  • Optimized handling of font instance cache. Font instances will get freed upon cleanUp()-call of a document instance.
  • Fixed resolving of values in Differences array which are mapped to the same glyph name.
  • Fixed method SetaPDF_Core_Geometry_Rectangle::intersect().
  • Fixed handling of referenced data of key values in tree structures (name-, number trees).
  • Fixed endless loop in parser.
  • Optimized handling of empty/nulled encryption value.
  • Added missing ensure() call in SetaPDF_Core_Type_Dictionary_Helper::keyHasValue().
  • Fixed cloning of undefined filter entries from a content stream.
  • Fixed/Optimized creation of ToUnicode map.
  • Fixed parsing of corrupted documents (xref starts with 1 and followed by '0000000000 65535 f') which was get broken in the last release.
  • Fixed resolving of Count entries in Pages dictionaries.
  • Added default about-attribute to xml metadata and created a public property to allow access to xml aliases.
  • Changed missing width value from 600 to 0 (default value in the PDF specification).
  • Completed Type0 font handling.
  • Removed calls to deprecated methods.
  • Allow setting a documents writer instance after the instance is "finished".
  • Optimized text graphic state class.
  • Refactored SetaPDF_Core_Canvas_Text class. Marked following methods as deprecated and introduced new named methods: setCharSpacing() to setCharacterSpacing(), setTextRise() to setRise(), beginText() to begin(), endText() to end().
  • Refactored a simple (read-only) version of the canvas object implementation.
  • Refactored SetaPDF_Core_Canvas_GraphicState to use Matrix and Vector classes.
  • Added accessor classes for MMType1 and Type3 fonts.
  • Refactored some font classes to be based on SetaPDF_Core_Font_Simple.
  • Optimized parsing of streams. The component searches for the first occurance of the first newline after the "stream" keyword now and doesn't expect it.
  • Added cleanUp() method to SetaPDF_Core_XObject class.
  • Added a demo that allows removing of usage rights.