Package: libpoppler19 Version: 0.18.4-6 Severity: normal Dear Maintainer,
It seems that some part of poppler algorithm has an (unduly) poor complexity. I attach a series of very simple PDF documents. Those are canvas for week schedules, the only parameter changing is the size allocated for each day. When uncompressed by pdftk, the diff is fairly small. Here are rendering times: ex1.pdf real 0m0.276s user 0m0.208s sys 0m0.048s ex2.pdf real 0m1.252s user 0m1.196s sys 0m0.040s ex3.pdf real 0m5.955s user 0m5.896s sys 0m0.036s ex4.pdf real 0m19.091s user 0m18.956s sys 0m0.080s ex5.pdf real 0m44.453s user 0m44.276s sys 0m0.088s This timing was obtained using the small attached python script, but it is consistent with the timing observed in evince, okular, xpdf. Strangely enough, xpdf shows the documents rendered really fast but the interface is stuck for some time similar to these measures. Note that mupdf renders the documents flawlessly. This might well be the same as #680495, I don’t have enough clues to say so, so I report this as a different bug. Best regards, Samuel -- System Information: Debian Release: jessie/sid APT prefers unstable APT policy: (990, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.10-1-amd64 (SMP w/2 CPU cores) Locale: LANG=es_AR.utf8, LC_CTYPE=es_AR.utf8 (charmap=UTF-8) (ignored: LC_ALL set to es_AR.UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages libpoppler19 depends on: ii libc6 2.17-7 ii libfontconfig1 2.10.2-2 ii libfreetype6 2.4.9-1.1 ii libjpeg8 8d-1 ii liblcms1 1.19.dfsg-1.2 ii libopenjpeg2 1.3+dfsg-4.6 ii libpng12-0 1.2.49-4 ii libstdc++6 4.8.1-8 ii libtiff4 3.9.7-1 ii multiarch-support 2.17-7 Versions of packages libpoppler19 recommends: ii poppler-data 0.4.6-4 libpoppler19 suggests no packages. -- no debconf information
#!/usr/bin/python import sys import gio import cairo import poppler uri = gio.File(sys.argv[1]).get_uri() doc = poppler.document_new_from_file(uri, None) page = doc.get_page(0) surface = cairo.PDFSurface('/tmp/out.pdf', 595.27559055118110236220, 841.88976377952755905511) context = cairo.Context(surface) page.render(context) #context.show_page()
pdfs.tar.xz
Description: application/xz