[gimp] Bug 791397 - Gimp import multi page PDF only imports first page.
- From: Jehan Pagès <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] Bug 791397 - Gimp import multi page PDF only imports first page.
- Date: Wed, 13 Dec 2017 19:19:52 +0000 (UTC)
commit a207570cfe0497ab7fdb344197692ea209966fde
Author: Jehan <jehan girinstud io>
Date: Wed Dec 13 18:33:22 2017 +0100
Bug 791397 - Gimp import multi page PDF only imports first page.
Poppler and poppler-data are now hard dependencies.
PDF is a common-enough format nowadays that import support is likely
considered as a granted feature by everyone. Moreover the current
fallback to the PostScript plug-in for PDF support just gives a degraded
experience with less features (and probably a lot of bugs since
basically nobody uses this code).
Poppler-data is also considered mandatory because non-western language
support should never be considered an "option". People using non-western
languages are not second class citizens and therefore if we say that PDF
import is now a hard feature, it should also include PDF using CJK or
Cyrillic languages.
INSTALL.in | 19 +++----------------
configure.ac | 36 ++++++++++++------------------------
plug-ins/common/Makefile.am | 2 +-
3 files changed, 16 insertions(+), 41 deletions(-)
---
diff --git a/INSTALL.in b/INSTALL.in
index 16fa358..f8a5dc1 100644
--- a/INSTALL.in
+++ b/INSTALL.in
@@ -87,17 +87,7 @@ header files installed.
11. You may want to install other third party libraries or programs
that are needed for some of the available plug-ins. We recommend
to check that the following libraries are installed: libjasper,
- libpoppler-glib, webkit, libmng, librsvg, libwmf, libaa
- and libgs (Ghostscript).
-
- Note that to be able to render CJK (Asian) and Cyrillic characters
- in pdf-imported files, the data package `poppler-data` needs to be
- installed as well. It is only possible to automatically check its
- existence since version @POPPLER_DATA_REQUIRED_VERSION@, but there is no strong requirement
- in our `configure` script because older versions of poppler-data may
- still work. Thus if poppler-data was not detected during ./configure,
- but you are sure it is installed, you are advised to test your build
- afterwards.
+ webkit, libmng, librsvg, libwmf, libaa and libgs (Ghostscript).
12. The Python extension requires Python 2 development headers (@PYTHON2_REQUIRED_VERSION@
or newer) to be present. You will also need PyGTK and the
@@ -145,6 +135,8 @@ header files installed.
libtiff
Little CMS @LCMS_REQUIRED_VERSION@
pangocairo @PANGOCAIRO_REQUIRED_VERSION@
+ libpoppler-glib @POPPLER_REQUIRED_VERSION@
+ poppler-data @POPPLER_DATA_REQUIRED_VERSION@
zlib
18. Summary of optional packages:
@@ -157,8 +149,6 @@ header files installed.
libjasper - JPEG 2000
libmng - MNG
openexr @OPENEXR_REQUIRED_VERSION@ OpenEXR
- libpoppler-glib @POPPLER_REQUIRED_VERSION@ PDF import
- poppler-data @POPPLER_DATA_REQUIRED_VERSION@ PDF import (optional: rendering of CJK and
Cyrillic)
cairo-pdf @CAIRO_PDF_REQUIRED_VERSION@ PDF export
python 2 @PYTHON2_REQUIRED_VERSION@ Python plug-ins
librsvg @RSVG_REQUIRED_VERSION@ SVG
@@ -266,9 +256,6 @@ These are:
--without-librsvg. If for some reason you want to build GIMP without
SVG support, you can build --without-librsvg.
- --without-poppler. If for some reason you don't want to build the PDF
- Import plug-in that uses libpoppler, you can use --without-poppler.
-
--without-print. If for some reason you don't want to build the Print
plug-in based on the GtkPrint API, you can build with --without-print.
diff --git a/configure.ac b/configure.ac
index bb572d8..5ec1c65 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1724,29 +1724,18 @@ AM_CONDITIONAL(BUILD_PRINT, test "x$enable_print" = xyes)
# Check for libpoppler
######################
-AC_ARG_WITH(poppler,[ --without-poppler build without poppler support])
-
-have_poppler=no
-if test "x$with_poppler" != xno; then
- PKG_CHECK_MODULES(POPPLER,
- poppler-glib >= poppler_required_version,
- [ FILE_PDF_LOAD='file-pdf-load$(EXEEXT)'
- AC_DEFINE(HAVE_POPPLER, 1, [Define to 1 if libpoppler is available])
- # We don't check against a poppler-data version, because old
- # versions may work as well. Yet the pkg-config file has only been
- # added in 0.4.7, thus we can't verify presence of older versions.
- PKG_CHECK_MODULES(POPPLER_DATA, poppler-data,
- [have_poppler="yes (Cyrillic and CJK support: yes)"],
- [have_poppler='yes (Cyrillic and CJK support: no or poppler-data < poppler_data_required_version)']
- )
- ],
- have_poppler="Using PostScript plug-in (libpoppler-glib not found)")
-else
- have_poppler="Using PostScript plug-in (libpoppler support disabled)"
-fi
-
-AC_SUBST(FILE_PDF_LOAD)
-
+# We don't check against a poppler-data version, which basically means
+# at least 0.4.7 since it has a pkg-config file since 0.4.7, thus we
+# can't verify presence of older versions. Anyway all modern
+# distributions have at least this version and CJK/Cyrillic support
+# should not be considered as "second-zone citizen".
+PKG_CHECK_MODULES(POPPLER, [poppler-glib >= poppler_required_version],
+ PKG_CHECK_MODULES(POPPLER_DATA, poppler-data,,
+ [add_deps_error([poppler-data])]),
+ [add_deps_error([poppler-glib >= poppler_required_version])])
+
+have_poppler=yes
+AC_DEFINE(HAVE_POPPLER, 1, [Define to 1 if libpoppler is available])
#####################
# Check for cairo-pdf
@@ -2709,7 +2698,6 @@ Optional Plug-Ins:
MNG: $have_libmng
OpenEXR: $have_openexr
WebP: $have_webp
- PDF (import): $have_poppler
PDF (export): $have_cairo_pdf
Print: $enable_print
Python 2: $enable_python
diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am
index d2df391..24ec38b 100644
--- a/plug-ins/common/Makefile.am
+++ b/plug-ins/common/Makefile.am
@@ -92,7 +92,7 @@ libexec_PROGRAMS = \
$(FILE_MNG) \
file-pat \
file-pcx \
- $(FILE_PDF_LOAD) \
+ file-pdf-load \
$(FILE_PDF_SAVE) \
file-pix \
file-png \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]