Poppler Changelog

New in version 0.30.0

January 29th, 2015
  • core:
  • Openjpeg2 support (openjpeg 1 is preferred). Bug #58906
  • Fix potential memory corruption on TextSelectionDumper. Bug #84555
  • Check for invalid matrix in annotation. Bug #84990
  • Open some not conforming files. Bug #85919
  • PSOutputDev: Accept a list of pages indeces instead of first, last. Bug #84833
  • Fix memory leak on error condition
  • cpp:
  • New API to set debug output function
  • build system:
  • configure: Improve support with older clang versions. Bug #76963
  • utils:
  • pdfunite: Support output intents, optional content and acroform

New in version 0.24.5 (January 3rd, 2014)

  • Core:
  • GooString format: Added some tests + improved documentation
  • GooString format: fixed bug with printing LLONG_MIN
  • regression test improvements
  • Qt4:
  • Arthur backend font rendering improvements
  • test program to save to file
  • Qt5:
  • Arthur backend font rendering improvements
  • Improve detection of Qt5 moc. Bug #72744
  • test program to save to file
  • Utils:
  • pdfunite: Work even if there's a single file given
  • pdfunite: do not lose fonts when merging some files

New in version 0.24.4 (December 2nd, 2013)

  • Core:
  • Fix regression in broken endstream detection.
  • Catalog: sort entries of NameTrees to make sure lookup works.
  • Don't infinite loop if reading from GooFile::read fails.
  • Utils:
  • pdftotext: Do not close stdout.
  • pdftotext: Silence warning for may be used uninitialized variable.
  • pdftotext: Escape the text of the xml headers
  • Warn the user if he provides a wrong range
  • Qt4:
  • Fix typo in xml API.
  • Qt5:
  • Fix typo in xml API.

New in version 0.24.3 (November 4th, 2013)

  • core:
  • PSOutputDev: Fix PFB font embedding. Bug #69717
  • CairoOutputDev: Do not set an invalid matrix in drawImage(). Bug #70085
  • qt4:
  • Don't crash if getXRef()->copy() fails
  • qt5:
  • Don't crash if getXRef()->copy() fails
  • utils:
  • pdfseparate: Allow only one %d in the filename. Bug #69434

New in version 0.24.0 (August 6th, 2013)

  • Large file support was added.
  • Rendering was made thread-safe.
  • The Crypt filter was implemented.
  • Thin Line mode support was added to SplashOutputDev.
  • SplashOutputDev is now 10 times faster at some tiling.
  • Support for uncolored tiling patterns was added to CairoOutputDev.
  • Caching of lcms2 ICC color profiles was improved.
  • A thread stresser tool was added to the Qt4 frontend.
  • An initial Qt5 frontend was added.
  • Further enhancements and several bug fixes were made.

New in version 0.22.5 (July 4th, 2013)

  • Minor bugs were fixed, including potential memory leaks and crashes.

New in version 0.23.2 (June 11th, 2013)

  • SplashOutputDev is now 10 times faster at some tiling.
  • Caching of lcms2 ICC color profiles was improved.
  • Some private classes were moved into an anonymous namespace.
  • A thread stresser tool was added to the Qt4 frontend.
  • The mingw build was fixed.

New in version 0.23.1 (May 29th, 2013)

  • Large file support was added.
  • Rendering was made thread-safe.
  • The Crypt filter was implemented.
  • Thin Line mode support was added to SplashOutputDev.
  • Support for uncolored tiling patterns was added to CairoOutputDev.
  • Several minor bugs were fixed.

New in version 0.22.3 (April 15th, 2013)

  • core:
  • Check order bounding box values in tiling pattern (Bug #62369)
  • CairoImageOutputDev: Don't change image interpolation when printing (Bug #62418)
  • TextOutputDev: Set text matrix when painting selection (Bug #61042)
  • Only write the file once when saving (Bug #62739)
  • Fix for complete rewrites in repaired files
  • Fixlet regarding spec interpretation for Link Zoom value
  • Fix typos in man pages
  • Fix compile when not using libjpeg
  • glib:
  • Always start from the beginning when starting a new search on a page (Bug #59972)
  • qt4:
  • Fix crash in files with LinkRendition (KDE Bug #317710)
  • build system:
  • Small cmake improvements

New in version 0.22.2 (March 22nd, 2013)

  • Modification of files with Encrypt is now possible. pdftocairo gained TIFF output support.
  • The Splash backend now implements bilinear image scaling, improving upscaling of text images.
  • The GLIB and Qt 4 frontends gained various APIs.
  • Annotation and form improvements were made.
  • Various bugfixes and improvements were made.

New in version 0.21.1 (November 12th, 2012)

  • Annotation and form improvements were made.
  • CairoImageOutputDev gained support for parameterized Gouraud shading.
  • The Qt4 frontend was improved.
  • Various minor bugs were fixed.

New in version 0.21.0 (October 13th, 2012)

  • Modification of files with Encrypt is now possible.
  • The GLIB and Qt 4 frontends gained various APIs.
  • pdftohtml was improved.
  • Various annotation improvements were made.
  • Many minor improvements were made, and bugs were fixed.

New in version 0.20.2 (July 12th, 2012)

  • Several minor bugs have been fixed, including a hang in the qt4 frontend and a crash with malformed documents.

New in version 0.20.1 (June 23rd, 2012)

  • This version merges Xpdf 3.03, improves annotations, supports lcms2 (LittleCMS 2), implements overprint, improves CairoOutputDev, enhances the utilities, adds producer and version information to the XML output of pdftohtml, and determines pdftohtml font styles by FontDescriptor before falling back to font names.
  • Many other improvements were made and bugs were fixed.

New in version 0.19.3 (April 20th, 2012)

  • This version improves annotations, fixes various bugs in CairoOutputDev, adds producer and version information to the XML output of pdftohtml, fixes outputMask inversion for PNGs in pdftohtml, and fixes other bugs.

New in version 0.19.2 (March 30th, 2012)

  • This version merges Xpdf 3.03, supports lcms2 (LittleCMS 2), implements overprint, improves CairoOutputDev, enhances the utilities, and adds many other improvements and bugfixes.

New in version 0.18.4 (February 17th, 2012)

  • Several improvements were made to CairoOutputDev and to the glib frontend.
  • HtmlOutputDev gained fixes for Unicode support, tags, and memory leaks. Other minor bugs were fixed.

New in version 0.18.2 (December 6th, 2011)

  • Several minor crashes and memory leaks were fixed.
  • GfxColorSpace::parse now accepts dicts.

New in version 0.18.1 (October 28th, 2011)

  • The PostScript output created by PSOutputDev was improved.
  • Several CairoOutputDev bugs were fixed.
  • pdftocairo now flushes and closes files properly when done using them.
  • Other fixes were made.

New in version 0.18.0 (September 28th, 2011)

  • Improvements were made to Annotation support, Form support, and to performance in general.
  • The Splash backend gained support for tiling patterns, for slight hinting and for overprint.
  • The PSOutputDev backend now writes gray instead of RGB for gray images, and CMYK instead of RGB in level2sep and level3sep.
  • JavaScript actions were added to the glib frontend.
  • New "pdftocairo", "pdfunite", and "pdfseparate" tools were introduced, while the other utilities were improved.
  • Various other improvements and minor fixes were made.

New in version 0.17.2 (August 17th, 2011)

  • Improvements were made to EmbeddedFile.
  • Selection of CJK fonts was improved.
  • Overprint was implemented.
  • Various minor bugs were fixed.

New in version 0.16.7 (June 28th, 2011)

  • core:
  • Fix memory leak on documents whose Catalog has no Pages entry
  • Check Catalog is a dictionary before using it (KDE Bug #274888)
  • utils:
  • pdftohtml: Do not crash in links without action

New in version 0.16.6 (June 2nd, 2011)

  • Fixed a Unicode parsing bug and a JavaScript crash.

New in version 0.17.1 (May 6th, 2011)

  • The way the form fields tree is built was reworked.
  • Unused parameters and variables were cleaned up.
  • JavaScript actions were added to the glib frontend.

New in version 0.16.5 (May 2nd, 2011)

  • core:
  • Fix a memleak in AnnotScreen::initialize
  • Properly initialize pageObjectNum to 0. Bug #35925
  • utils:
  • pdftotext: bbox coordinates are relative to MediaBox size, not CropBox size
  • cpp:
  • Fix page_transition::operator

New in version 0.17.0 (March 31st, 2011)

  • Improvements were made to Annotation support, Form support, and to performance in general.
  • Many enhancements were made to the Splash backend.
  • New options were added to the utilities.
  • The frontends were improved.
  • Many other enhancements were made.

New in version 0.16.4 (March 31st, 2011)

  • Small improvements were made in Annotation parsing.
  • Several minor bugfixes and documentation improvements were made.

New in version 0.16.0 (December 29th, 2010)

  • Support for Annotations, shadings, antialiasing, linearization, and the Arthur backend was improved.
  • Several crashes and other minor bugs were fixed.
  • APIs were extended.
  • Since the last development release, several build improvements were made, pdftohtml code style was improved, the correctness of radial shadings was improved, and the zlib-based FlateStream code was adapted.

New in version 0.15.3 (December 8th, 2010)

  • core:
  • Improve rendering of radial shadings
  • Open a broken file (Bug #31861)
  • Correct parsing of linearization table (Bug #31627)
  • Find fonts inside patterns (Bug #31948)
  • [win32] Simplify strtok_r implementation
  • Use a std::vector instead of a var-length-array of chars
  • Fix crashes in broken files
  • Use sets instead of arrays for looking for duplicate fonts
  • cpp:
  • Include correction
  • utils:
  • pdffonts: Remove duplicated code

New in version 0.15.2 (November 15th, 2010)

  • core:
  • Improve shadings and antialias in the Splash backend (Bug #30436)
  • Linearization improvements
  • Small improvements to the Arthur backend
  • Fix calculation of the size of some pages (Bug #30784)
  • Fix crashes in broken documents
  • qt4:
  • Add Page::renderToPainter() method
  • Add setDebugErrorFunction() method
  • cpp:
  • Add the hability to render pages to an image
  • utils:
  • Add -p flag to pdfimages
  • build system:
  • Remove -ansi flag for cywin and mingw

New in version 0.15.1 (October 26th, 2010)

  • The render value is now considered when colorizing text.
  • Rendering of Shading Type 6 and 7 was improved.
  • Dict lookup speed for big dicts was increased.
  • Several crashes and memory leaks were resolved.
  • More printing options were added to the glib API.
  • Several accessors and callbacks were added.
  • The utilities gained new options.
  • The build system now requires Cairo 1.10.
  • Several further minor fixes and improvements were made.

New in version 0.14.4 (October 11th, 2010)

  • core:
  • Set initial state of optional content groups based on BaseState field
  • Fix multiple crashes in malformed PDF files
  • Fix memory leak in in malformed PDF files
  • Fix memory leak in the Catalog names
  • Fix uninitialized uses on DCTScanInfo
  • Fix a crash when drawing square/circle annots without a border (Bug #30580)
  • glib:
  • Fix layers array generation when it contains multiple arrays
  • Fix a crash when building layer actions (Bug #30106)

New in version 0.15.0 (September 20th, 2010)

  • Creation of Annotations was improved.
  • A failure to parse PDFs with damaged internal structures was fixed.
  • A method to access the raw text of a page was added to the core and all frontends.
  • Many performance improvements were made.
  • Exception support was removed.
  • Documentation and build were improved.

New in version 0.14.2 (August 22nd, 2010)

  • Crashes in the PS output device, on some malformed files, and with nameless layers were resolved.
  • Rendering of some documents involving tilingPatternFill was fixed in the Cairo output device.
  • ColorTransform is now handled properly in DCT streams when using libjpeg.
  • Padding of names in pdftoppm was fixed.

New in version 0.14.1 (July 15th, 2010)

  • core:
  • Add ObjectStream caching, makes opening some files ten times faster (Bug #26759)
  • Fix crash when writing to negative coordinates (Bug #28480)
  • Check objects are the type we want them to be when parsing GfxICCBasedColorSpace
  • Optimize Splash::compositeBackground
  • Optimize color space calculations by using sqrt instead of pow 0.5
  • Fix crash in JBIG2Stream with malformed documents
  • build system:
  • Make sure we ship two needed cmake files
  • Do not distribute glib/poppler-features.h and poppler/poppler-config.h
  • Improve compilation with Sun Studio
  • Fix linking of the cpp frontend when using autotools
  • glib:
  • Fix links/annots area for some documents (Bug #28588)
  • Fix poppler_page_find_tex() when called more than once (Bug #27927)
  • utils:
  • Add -cropbox to pdftoppm manual

New in version 0.14.0 (June 9th, 2010)

  • core:
  • Fix crash when parsing pdf with broken JBIG2Stream (Bug #28170)
  • Do not follow loops blindly when parsing XRef (Bug #28172)
  • Allow quality & progressive mode to be utilised in JpegWriter
  • Fix potential assert in Lexer code (KDE bug #240208)
  • Fix opening of files whose /P is stored as unsigned integer
  • Do not exit() when trying to allocate memory for the XRef fails
  • cpp:
  • Minor bugfixes
  • Documentation improvements
  • build system:
  • Fix build in mingw32 when using autotools
  • Preserve compiler flags when using cmake

New in version 0.13.2 (March 30th, 2010)

  • core:
  • Improve Movie support
  • Fix experimental Arthur backend to compile when if Splash backend is disable
  • Fix usage of some streams in the Cairo backend
  • Small improvements in the experimental Arthur backend
  • Minor annotation improvements
  • Rework LinkRendition to follow the spec
  • Add support for Set-OCG-State actions
  • Correctly initialize the grayscale softmask color in the Splash backend
  • Correctly initialize actualText in TextOutputDev when initialization fails
  • Various MSVC fixes
  • utils:
  • glib:
  • Add support for Movie objects
  • Add support for Screen annotations
  • Add support for rendition actions
  • Add support for OCG State actions
  • Improvements to the demo
  • qt4:
  • Always compile the experimental Arthur backend
  • Minor speed improvement in QPainter usage
  • Add a search overload that takes doubles instead of QRectF
  • cpp:
  • Fix iconv usage
  • use gmtime() when gmtime_r() is not available
  • Fix building in autotools in windows
  • {from,to}_utf_8() -> {from,to}_utf8()
  • build system:
  • Multiple CMake build system fixes
  • Fix of some DIST targets in autotools
  • Make finding of Qt3 in autotools use pkg-config

New in version 0.12.1 (October 20th, 2009)

  • Compilation with some compilers was fixed.
  • A crash on fonts without CharCodeToUnicode was resolved.
  • Reliability for streams with broken Length was improved.
  • A crash when saving files that come from a stream without a name was resolved.
  • The reliability of the save function was improved.
  • An incorrect Length value is now fixed when saving.
  • Security fixes based on xpdf 3.02pl4 were integrated.
  • Several other bugfixes and improvements were made.
  • The build system was enhanced.

New in version 0.12.0 (September 10th, 2009)

  • Core:
  • Fix printf format security warnings
  • Improve rendering of radial shadings. Bug #20238
  • Better fallback when there's a font type mismatch. Bug #17252
  • Do not crash on attachments without data stream. Bug #10386
  • Fix infinite loop in JBIG2Decoder. Bug #23025
  • Build system:
  • Minimizes pkg-config dependencies for Qt frontends
  • Add automake 1.11 support
  • Use the newest automake found and not the oldest
  • Support AM_SILENT_RULES when using automake 1.11
  • Utils:
  • Add common options to pdftoabw

New in version 0.11.2 (August 4th, 2009)

  • core:
  • Make DecryptStream return sane values for getPos(). Bug #19706
  • Fix bug when printing pdf with multiple page sizes in duplex mode
  • Initilize AnnotColot properly when the Array is not correct
  • Fix crash on some files with forms. Bug #22485
  • Fix crash in files with invalid embedded files. Bug #22551
  • Improve FileSpec attribute parsing
  • Cairo output device improvements. Bugs #10942, #18017, #14160
  • Implement blend modes in cairo backend
  • Handle fontType1COT fonts in CairoFontEngine
  • Fix generation of PS for some files. Bug #18908
  • Don't use byte_lookup table when color space doesn't support getLine methods. Bug #11027
  • Fix rendering of PDF files with malformed patterns. Bug #22835
  • Add the possibility of disabling font substitution in pdftops. Bug #23030
  • Fix some radio buttons not being detected as such
  • glib:
  • Improvements to the demo
  • Qt4:
  • Improvements to the demo
  • build system:
  • Use gtkbuilder rather than libglade for some tests
  • utils:
  • Fix bug with noCrop parameter in pdftops

New in version 0.11.1 (June 29th, 2009)

  • core:
  • Support colorizing text in pattern colorspace. Bug #19670 and #19994
  • Add the possibility of forcing no hinting of fonts in the Splash backend
  • Support multiple page sizes when converting to PS. Bug #19777
  • Also tokens with leading 00 when parsing the char to unicode map. Bug #22025
  • Improvements of rendering speed in documents using PS transformations a lot. Bug #21562
  • More work on Annotations support
  • Use Interpolate flag to decide whether applying image interpolation during rendering. Bug #9860
  • Handle Streams in CMap definitions. Bug #22334
  • Fix some bugs in JBIG2Stream handling
  • Fix dashed line in page 1 of bug 20011
  • Fix exit(1) when rendering a file
  • Fix pdftops crash on file from KDE bug #174899
  • Fix PS generation in some files. Bug #20420
  • Do not create the GfxColorTransform if the lcms could not be created. Bug #20108
  • Check Mask entries are int before using them, if they are real cast to int and try to use them. Bug #21841
  • Use the correct value when creating the V field for form combo boxes
  • Give an error when using level1sep in pdftops without having CMYK support. Bug #22026
  • Don't include lcms.h in GfxState.h
  • Fix splashColorModeNComps to correctly include all values for each SplashColorMode
  • Add splashClearColor that assigns white to the given colorptr
  • Kill support for specifying extension in openTmpFile. Bug #21713
  • Fix "Conditional jump or move depends on uninitialised value". Bug #20011
  • glib:
  • Add poppler_annot_markup_has_popup()
  • Hyphenate UTF-8 and UTF-16BE. Bug #21953
  • Use g_strerror instead of strerror. Bug #22095
  • Fix a crash when a destination points to an invalid page
  • Improvements to the demo
  • Qt4:
  • Add LinkDestination::destinationName()
  • Do not try to resolve named destinations for GoTo links pointing to external documents
  • Add Page::thumbnail()
  • Improvements to the demo
  • Improvements to the documentation
  • build system:
  • Build fix for MSVC
  • Better lcms cmake check comming from kdelibs
  • Use pkgconfig for autotools lcms check
  • Remove unneeded files from repo. Bug #22094

New in version 0.11.0 (May 12th, 2009)

  • core:
  • Add initial support for color management
  • Remove case-insensitive matching of filenames in PDFDoc constructor
  • Fix extraction of some ActualText content
  • More work on Annotations support
  • Improve font rendering in Cairo output device
  • Fix bug in cairo backend with nested masks
  • Fix cairo luminosity smask rendering
  • Add optionally text support to Cairo output device
  • Add the possibility of setting the datadir on runtime
  • Return an error code instead of a boolean when saving
  • Make the font scanner more versatile
  • Small opimization in documents that use PostScriptFunction transforms
  • Minor optimization to Stream handling
  • Fix some compile warnings
  • glib:
  • Optional content support
  • More work on Annotations support
  • Improvements to the demo
  • Documentation improvements
  • Fix build when compiling with GTK_DISABLE_SINGLE_INCLUDES
  • Qt4:
  • Support URI actions for Table Of Contents items
  • Documentation improvements
  • Improvements to the demo
  • Add a FontIterator for iterating through the fonts of the document
  • utils:
  • Allow the use of cropbox in pdftoppm
  • Make pdftohtml output png images when the image stream is not a jpeg
  • Make pdftotext accept cropping options like pdftoppm
  • Support rendering non-square pixels in pdftoppm
  • build system:
  • Require Cairo 1.8.4 for the Cairo output device
  • Require CMake 2.6 when using the CMake build system
  • Optionally require libpng for pdftohtml
  • Optionally require libcms for color management

New in version 0.10.6 (April 17th, 2009)

  • Core:
  • Fix problems that happen when parsing broken JBIG2 files. CVE-2009-0799, CVE-2009-0800, CVE-2009-1179, CVE-2009-1180 CVE-2009-1181, CVE-2009-1182, CVE-2009-1183, CVE-2009-1187, CVE-2009-1188
  • Fix parsing of incorrect border arrays. Bug #19761
  • Fix clip test for fonts. Bug #20950
  • Fix getGlyphAdvance to behave correctly on font size changes. Bug #20769
  • Misc build fixes
  • Build system:
  • Fix the Qt4 version we need

New in version 0.10.5 (March 13th, 2009)

  • A CairoOutputDev crash and a JBIG2Stream input instability were resolved.
  • Rendering of some PDFs with OpenType fonts was fixed.
  • Several other bugs were fixed.
  • The build system was improved.

New in version 0.10.4 (February 11th, 2009)

  • Several crashes and memory leaks were resolved.
  • Wrong PostScript generation was fixed in two cases.
  • Rendering of some checkboxes was fixed.
  • Positioning was fixed in the Qt4 frontend.
  • Several other bugs were fixed.

New in version 0.10.2 (December 26th, 2008)

  • Fixes were made for a crash when selecting text in word mode, for a crash in some malformed documents, and for a memory leak.
  • Other minor fixes were made.

New in version 0.10.1 (November 10th, 2008)

  • Several memory leaks were fixed, as well as a potential crash on text search.
  • Poppler now tries to render documents with invalid indexed color space parameters.
  • Improvements were made to Optional Content support.

New in version 0.10.0 (October 10th, 2008)

  • Initial JavaScript support was added.
  • Improvements were made to Annotation and in the Arthur and Cairo based renderers.
  • A JPEG2000 decoder based on OpenJPEG was added.
  • JPEG rendering when not using the libjpeg based decoder was fixed.
  • An out of memory condition on documents that specify huge fonts was fixed.
  • Adobe Reader's behavior is emulated on documents with duplicate keys in Dictionaries.
  • Forms improvements and movie fixes were made.
  • Many improvements were made to the Qt and Glib frontends, the utilities, and the documentation.
  • Several other improvements and bugfixes were made.

New in version 0.9.3 (October 1st, 2008)

  • This release fixes two font rendering regressions, a crash on documents with bogus JPEG data, and several other problems.

New in version 0.9.2 (September 25th, 2008)

  • A PostScript conversion problem was fixed. Several small Form and JavaScript fixes were made.
  • Memory usage of the cairo renderer was improved.
  • A crash and several memory problems in pdftohtml were resolved.

New in version 0.9.1 (September 18th, 2008)

  • Crashes on some AESv2 encrypted files were fixed.
  • The parsing of broken files was improved.
  • A pdftohtml output file misplacement was fixed.

New in version 0.9.0 (September 12th, 2008)

  • Initial JavaScript support was added.
  • Improvements were made to Annotation and in the Arthur and Cairo based renderers.
  • A JPEG2000 decoder based on OpenJPEG was added.
  • JPEG rendering when not using the libjpeg based decoder was fixed.
  • An out of memory condition on documents that specify huge fonts was fixed.
  • Adobe Reader's behaviour is emulated on documents with duplicate keys in Dictionaries.
  • Forms improvements and movie fixes were made.
  • Many improvements were made to the Qt and Glib frontends, the utilities, and the documentation.