Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarlos Garcia Campos <carlosgc@gnome.org>2007-02-15 11:56:11 (GMT)
committer Carlos Garcia Campos <carlosgc@src.gnome.org>2007-02-15 11:56:11 (GMT)
commitd8ed4cd9b3f558e51091632282aaaf39146fcb9b (patch)
tree0ccf9ea8b24366433ae82f39e2ef99a4294fb01e
parenta4b23dabe4d2d833b33977deaec39ee0fe2df826 (diff)
Restore cairo context before rendering every page when printing a PDF
2007-02-15 Carlos Garcia Campos <carlosgc@gnome.org> * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_do_page): Restore cairo context before rendering every page when printing a PDF document into a PDF file. svn path=/trunk/; revision=2327
-rw-r--r--ChangeLog7
-rw-r--r--backend/pdf/ev-poppler.cc4
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 1b7a182..f0fbff2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-02-15 Carlos Garcia Campos <carlosgc@gnome.org>
+
+ * backend/pdf/ev-poppler.cc: (pdf_document_file_exporter_do_page):
+
+ Restore cairo context before rendering every page when printing a PDF
+ document into a PDF file.
+
2007-02-13 Carlos Garcia Campos <carlosgc@gnome.org>
* backend/ps/gstypes.h:
diff --git a/backend/pdf/ev-poppler.cc b/backend/pdf/ev-poppler.cc
index 5c7f495..7c2c528 100644
--- a/backend/pdf/ev-poppler.cc
+++ b/backend/pdf/ev-poppler.cc
@@ -1577,11 +1577,15 @@ pdf_document_file_exporter_do_page (EvFileExporter *exporter, EvRenderContext *r
poppler_page_render_to_ps (poppler_page, ctx->ps_file);
break;
case EV_FILE_FORMAT_PDF:
+#ifdef HAVE_CAIRO_PDF
+ cairo_save (ctx->pdf_cairo);
+#endif
#ifdef HAVE_POPPLER_PAGE_RENDER
poppler_page_render (poppler_page, ctx->pdf_cairo);
#endif
#ifdef HAVE_CAIRO_PDF
cairo_show_page (ctx->pdf_cairo);
+ cairo_restore (ctx->pdf_cairo);
#endif
break;
default: