stefan pushed a commit to branch master.

http://git.enlightenment.org/core/evas_generic_loaders.git/commit/?id=1e1a1e6fffc1805aadf75467e72af71391636075

commit 1e1a1e6fffc1805aadf75467e72af71391636075
Author: Stefan Schmidt <s.schm...@samsung.com>
Date:   Fri Mar 6 10:44:50 2015 +0100

    pdf: Add support for changes with poppler >= 0.31
    
    With 0.31 poppler removed some parts of GlobalParams
    which they do not consider a public API. The antialias
    setting can now be done over the output device.
    
    Fixes T2184
    @fix
---
 configure.ac         | 14 ++++++++++++--
 src/bin/pdf/main.cpp | 10 ++++++++--
 2 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/configure.ac b/configure.ac
index 7e13584..1079c6e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -73,15 +73,25 @@ if test "x${want_poppler}" = "xyes" ; then
       [have_poppler="no"])
 
    if test "x${have_poppler}" = "xno" ; then
-      PKG_CHECK_EXISTS([poppler >= 0.20],
+      PKG_CHECK_EXISTS([poppler >= 0.20 poppler < 0.31],
          [
-          poppler_pc="poppler >= 0.20"
+          poppler_pc="poppler >= 0.20 poppler < 0.31"
           AC_DEFINE(HAVE_POPPLER_020, 1, [Have poppler 0.20])
           have_poppler="yes"
          ],
          [have_poppler="no"])
    fi
 
+   if test "x${have_poppler}" = "xno" ; then
+      PKG_CHECK_EXISTS([poppler >= 0.31],
+         [
+          poppler_pc="poppler >= 0.31"
+          AC_DEFINE(HAVE_POPPLER_031, 1, [Have poppler 0.31])
+          have_poppler="yes"
+         ],
+         [have_poppler="no"])
+   fi
+
    if test "x${have_poppler}" = "xyes" ; then
       PKG_CHECK_MODULES([POPPLER], [${poppler_pc}],
          [have_poppler="yes"],
diff --git a/src/bin/pdf/main.cpp b/src/bin/pdf/main.cpp
index a68b21f..78f918e 100644
--- a/src/bin/pdf/main.cpp
+++ b/src/bin/pdf/main.cpp
@@ -62,10 +62,12 @@ Eina_Bool poppler_init(const char *file, int page_nbr, int 
size_w, int size_h)
    if (!eina_init())
      goto del_global_param;
 
+#ifndef HAVE_POPPLER_031
    if (globalParams->getAntialias())
      globalParams->setAntialias((char *)"yes");
    if (globalParams->getVectorAntialias())
      globalParams->setVectorAntialias((char *)"yes");
+#endif
 
    pdfdoc = new PDFDoc(new GooString(file), NULL);
    if (!pdfdoc)
@@ -161,7 +163,7 @@ void poppler_load_image(int size_w, int size_h)
    if (!output_dev)
      return;
 
-#ifdef HAVE_POPPLER_020
+#if defined(HAVE_POPPLER_020) || defined(HAVE_POPPLER_031)
    output_dev->startDoc(pdfdoc);
 #else
    output_dev->startDoc(pdfdoc->getXRef());
@@ -169,8 +171,12 @@ void poppler_load_image(int size_w, int size_h)
 
    if (dpi <= 0.0) dpi = DEF_DPI;
 
+#ifdef HAVE_POPPLER_031
+   output_dev->setFontAntialias(EINA_TRUE);
+   output_dev->setVectorAntialias(EINA_TRUE);
+#endif
 
-#ifdef HAVE_POPPLER_020
+#if defined(HAVE_POPPLER_020) || defined(HAVE_POPPLER_031)
    page->displaySlice(output_dev, dpi, dpi, 
                       0, false, false,
                       0, 0, width, height,

-- 


Reply via email to