Summary: | one particular PDF file displays badly | ||
---|---|---|---|
Product: | poppler | Reporter: | Lionel Elie Mamane <lionel> |
Component: | general | Assignee: | poppler-bugs <poppler-bugs> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | macho |
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
problematic pdf file
wrong rendering in evince correct rendering in xpdf initialize CairoOutputDev::antialias |
Created attachment 128319 [details]
wrong rendering in evince
Created attachment 128320 [details]
correct rendering in xpdf
Works fine here, any chance you can try builing poppler from source and trying the test apps? I built poppler 0.48.0 from the Debian package, and both qt4/tests/test-poppler-qt4 and qt5/tests/test-poppler-qt5 display the first page fine. And I cannot reproduce the issue in evince anymore... <shrug> The ability to specify antialiasing was added to pdftocairo and CairoOutputDev (Bug #94977) but CairoOutputDev::antialias is not always initialized, so which antialiasing option gets used by evince can be unpredictable. Also, cairo's CAIRO_ANTIALIAS_BEST does not work well. Running "pdftocairo -png -antialias best input.pdf out" on the PDF in this bug and others produces incorrect rendering. So, depending on whether during rendering CairoOutputDev::setContextAntialias is called, and depending on what value the memory allocation gods choose for CairoOutputDev::antialias, this bad rendering can be triggered. Created attachment 128371 [details] [review] initialize CairoOutputDev::antialias This patch initializes CairoOutputDev::antialias so that CAIRO_ANTIALIAS_DEFAULT will be used unless pdftocairo or some other application sets it to another value. This fixes the rendering in evince. opened bug #99021 for cairo's font rendering not working with CAIRO_ANTIALIAS_BEST (In reply to Jason Crain from comment #7) > Created attachment 128371 [details] [review] [review] > initialize CairoOutputDev::antialias > > This patch initializes CairoOutputDev::antialias so that > CAIRO_ANTIALIAS_DEFAULT will be used unless pdftocairo or some other > application sets it to another value. This fixes the rendering in evince. Good catch, pushed! |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 128318 [details] problematic pdf file Using evince (Debian package) 3.22.1-2 used with libpoppbler-glib8 0.48.0-2 the attached PDF file displays as per the attached screenshot. By contrast, xpdf 3.03-17+b1 using libpoppler46 0.26.5-2+deb8u1 displays it fine.