Bug 22855

Summary: Very bad quality from evince printing pages which have been printed to pdf using firefox
Product: poppler Reporter: Pedro Villavicencio <pvillavi>
Component: cairo backendAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED NOTABUG QA Contact:
Severity: normal    
Priority: medium CC: ajohnson
Version: unspecified   
Hardware: Other   
OS: All   
URL: https://bugs.edge.launchpad.net/ubuntu/+source/poppler/+bug/394266
Whiteboard:
i915 platform: i915 features:

Description Pedro Villavicencio 2009-07-20 09:49:07 UTC
this report has been filed here:

https://bugs.edge.launchpad.net/ubuntu/+source/poppler/+bug/394266

"
Using karmic and firefox-3.0, I printed a pdf of the following web page:

http://en.wikipedia.org/wiki/Subgroup

(permanent link: http://en.wikipedia.org/w/index.php?title=Subgroup&oldid=296077109)

If I print this pdf with evince (even printing to a pdf file) I get terrible quality and pages are converted to images. If I print it with okular, I get a good quality document, however a mathematical formula is obscured (bottom of page 3). In evince the formula is visible.

Here is the pdf printed from firefox:

http://launchpadlibrarian.net/28547865/groups.pdf

The reprint from evince:

http://launchpadlibrarian.net/28547874/a.pdf

The reprint from Okular:

http://launchpadlibrarian.net/28547885/b.pdf

On this other bug report: https://bugs.edge.launchpad.net/ubuntu/+source/cupsys/+bug/150187 Adrian Johnson explained:

The reason pages 1 and 4 of your PDF are printed as a bitmap are:

- Firefox is using cairo operators that are not natively supported by PDF on page 1 and 4. I don't think there is any reason that Firefox needs to use anything other than CAIRO_OPERATOR_OVER when printing so I consider this a bug in Firefox.

- As a result cairo embeds a fallback image in the PDF for the region drawn with operators not supported by PDF. But the bounding box of the PDF pattern used to draw the fallback image is set to the page size instead of the image size. This is a bug in cairo.

- When poppler is used to print the PDF via the cairo backend the image becomes a full page image due to the pattern bounding box being set to the page size."

It's also reproducible with git master version of poppler.

Thanks,
Comment 1 Carlos Garcia Campos 2009-08-09 08:47:28 UTC
> The reason pages 1 and 4 of your PDF are printed as a bitmap are:
> 
> - Firefox is using cairo operators that are not natively supported by PDF on
> page 1 and 4. I don't think there is any reason that Firefox needs to use
> anything other than CAIRO_OPERATOR_OVER when printing so I consider this a bug
> in Firefox.
> 
> - As a result cairo embeds a fallback image in the PDF for the region drawn
> with operators not supported by PDF. But the bounding box of the PDF pattern
> used to draw the fallback image is set to the page size instead of the image
> size. This is a bug in cairo.
> 
> - When poppler is used to print the PDF via the cairo backend the image becomes
> a full page image due to the pattern bounding box being set to the page size."
> 
> It's also reproducible with git master version of poppler.

So, if I understood correctly, it's a bug in firefox and cairo, not in poppler, since we are using the wrong bounding box becuase of the cairo bug.
Comment 2 Adrian Johnson 2016-07-16 06:00:53 UTC
The bug in firefox/cairo that resulted in full page fallback images was fixed a long time ago. For existing PDFs created with old versions of firefox there is nothing that can be done on the poppler side to improve printing since the PDF file only has a rasterized image for the page.

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.