Release 0.5.1

	- Support for embedded files.
	- Handle 0-width lines correctly.
	- Avoid external file use when opening fonts.
	- Only use vector fonts returned from fontconfig (#5758).
	- Fix scaled 1x1 pixmaps use for drawing lines (#3387).
	- drawSoftMaskedImage support in cairo backend.
	- Misc bug fixes: #5922, #5946, #5749, #5952, #4030, #5420.

Release 0.5.0

	- Font matching code for non embedded fonts now use fontconfig
          instead of hard coded list of fonts.
	- Merge in Xpdf 3.01 changes.
	- Add command line tools from Xpdf.
	- Make install of Xpdf header files ./configure'able.

Release 0.4.0

	- Real text selection.
	- API breakage in glib wrapper: dropping dest_x and dest_y
	  arguments from poppler_page_render_to_pixbuf().

Release 0.3.3

	- New glib API to get document font information (Marco).
	- More document properties available as glib properties (Emil
	  Soleyman-Zomalan, #3359)
	- Optimize color conversion for images.
	- Support for constant opacity.
	- Fix problems with pkg-config files.
	- Bugs fixes: #3491, #2911, #3362, #3340, #3265, #3239, #3396.

Release 0.3.2

	- New API to get poppler version and backend type. 
	- Various font fixes from Albert Astals Cid.
	- Update to cairo 0.5.0 API, including better font support.
	- Meta data for the glib binding.

Release 0.3.1

	- Add qt/poppler-private.h to SOURCES
	- Jeff's path to use zlib instead of builtin decompression.
	- Bug fixes: #2934, segfault on invalid links, #3114

Release 0.3.0

	- First cut at qt wrapper, including a getText() method for
	  getting text from a page.
	- More glib functionality: meta data, set page orientation,
	  print to PS
	- Performance fixes for glib cairo
	- Bug fixes

Release 0.2.0  (Tue Apr  5 12:32:10 EDT 2005)

	- Add glib wrapper for poppler, which will use cairo rendering
	  if available
	- Support for page labels
	- configure and build fixes.

Release 0.1.2  (Wed Mar  9 10:45:58 EST 2005)

	- cairo optimizations and fixes from Jeff Muizelaar
	- Bump cairo requirement to 0.4
	- Make cairo and gtk checks fail gracefully

Release 0.1.1

	- Fix issues with installed header files including config.h
	- Fix a couple of typos in pkg-config files
	- Install splash and cairo header files when necessary

Release 0.1 - no date yet

	- First release
	- More NEWS here
