diff --git a/ChangeLog b/ChangeLog
index dc4153d..ea257cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2005-05-18  Kristian Høgsberg  <krh@redhat.com>
+
+	* configure.ac: Require cairo 0.5.0, bump release to 0.3.2.
+
+	* NEWS: Sum up latest changes.
+
+	* glib/poppler-document.cc (poppler_ps_file_new): Take a page
+	range here instead of just number of pages.
+	
 2005-05-17  Kristian Høgsberg  <krh@redhat.com>
 
 	* poppler/CairoOutputDevX.cc: 
diff --git a/NEWS b/NEWS
index 7b389f3..cb3fd16 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+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
diff --git a/configure.ac b/configure.ac
index 5429417..31baef6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
 dnl Based on Xpdf configure.in and evince configure.ac
 
 AC_PREREQ(2.59)
-AC_INIT(poppler, 0.3.1)
+AC_INIT(poppler, 0.3.2)
 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
 AM_CONFIG_HEADER(config.h)
 AM_CONFIG_HEADER(poppler/poppler-config.h)
@@ -181,9 +181,9 @@
               enable_cairo_output=$enableval,
               enable_cairo_output="try")
 if test x$enable_cairo_output = xyes; then
-  PKG_CHECK_MODULES(CAIRO, cairo > 0.4.0 fontconfig)
+  PKG_CHECK_MODULES(CAIRO, cairo >= 0.5.0 fontconfig)
 elif test x$enable_cairo_output = xtry; then
-  PKG_CHECK_MODULES(CAIRO, cairo > 0.4.0 fontconfig,
+  PKG_CHECK_MODULES(CAIRO, cairo >= 0.5.0 fontconfig,
                     [enable_cairo_output="yes"],
                     [enable_cairo_output="no"])
 fi
diff --git a/glib/poppler-document.cc b/glib/poppler-document.cc
index c973299..73f523e 100644
--- a/glib/poppler-document.cc
+++ b/glib/poppler-document.cc
@@ -576,14 +576,16 @@
  * poppler_ps_file_new:
  * @document: a #PopplerDocument
  * @filename: the path of the output filename
- * @n_pages: the total number of pages that will be rendered
+ * @first_page: the first page to print
+ * @n_pages: the number of pages to print
  * 
  * Create a new postscript file to render to
  * 
  * Return value: a PopplerPSFile 
  **/
 PopplerPSFile *
-poppler_ps_file_new (PopplerDocument *document, const char *filename, int n_pages)
+poppler_ps_file_new (PopplerDocument *document, const char *filename,
+		     int first_page, int n_pages)
 {
 	PopplerPSFile *ps_file;
 
@@ -593,9 +595,12 @@
 
 	ps_file = g_new0 (PopplerPSFile, 1);
 	ps_file->document = (PopplerDocument *) g_object_ref (document);
-	ps_file->out = new PSOutputDev ((char *)filename, document->doc->getXRef(),
-					document->doc->getCatalog(), 1,
-					n_pages, psModePS);
+	ps_file->out = new PSOutputDev ((char *)filename,
+					document->doc->getXRef(),
+					document->doc->getCatalog(),
+					first_page + 1,
+					first_page + n_pages - 1,
+					psModePS);
 
 	return ps_file;
 }
diff --git a/glib/poppler-document.h b/glib/poppler-document.h
index f7e3652..ff4ce5e 100644
--- a/glib/poppler-document.h
+++ b/glib/poppler-document.h
@@ -104,6 +104,7 @@
 /* Export to ps */
 PopplerPSFile *poppler_ps_file_new   (PopplerDocument *document,
 				      const char      *filename,
+				      int              first_pages,
 				      int              n_pages);
 void           poppler_ps_file_free  (PopplerPSFile   *ps_file);
 
