glib/poppler-page.cc | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)
New commits: commit c93702bea0718d67660f2255344dcf9b0f502d57 Author: José Aliste <[email protected]> Date: Tue Nov 20 11:25:41 2012 +0100 glib: Ensure text is only computed on first render Getting the text on a page could be quite slow on complex pages without structured text. Before this patch, poppler_page_render would reprocess the text each time is called. diff --git a/glib/poppler-page.cc b/glib/poppler-page.cc index 52dab5f..84ceb7e 100644 --- a/glib/poppler-page.cc +++ b/glib/poppler-page.cc @@ -342,9 +342,11 @@ _poppler_page_render (PopplerPage *page, output_dev->setCairo (cairo); output_dev->setPrinting (printing); - if (!printing) - output_dev->setTextPage (page->text); + if (!printing && page->text == NULL) { + page->text = new TextPage(gFalse); + output_dev->setTextPage (page->text); + } /* NOTE: instead of passing -1 we should/could use cairo_clip_extents() * to get a bounding box */ cairo_save (cairo); @@ -380,9 +382,6 @@ poppler_page_render (PopplerPage *page, { g_return_if_fail (POPPLER_IS_PAGE (page)); - if (!page->text) - page->text = new TextPage(gFalse); - _poppler_page_render (page, cairo, gFalse, (PopplerPrintFlags)0); }
_______________________________________________ poppler mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/poppler
