Bug 31062

Summary: Regression: Printing certain documents yields characters scattered all over the page
Product: cairo Reporter: Marcel Stimberg <stimberg>
Component: generalAssignee: Carl Worth <cworth>
Status: RESOLVED FIXED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: major    
Priority: medium CC: stimberg
Version: 1.10.0   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Marcel Stimberg 2010-10-23 06:36:19 UTC
In the Ubuntu bug tracker, bug reports are piling up about evince producing scrambled documents when printing (also when printing to file, also seen in print preview):
https://bugs.launchpad.net/ubuntu/+source/evince/+bug/661724

This seems to be a regression, evince in Ubuntu 10.10 (cairo 1.10.0) shows this issue, evince in Ubuntu 10.04 (cairo 1.8.10) does not.

One example document showing this problem:
http://www.fincen.gov/fin104_ctr.pdf
And this is the output of "Print to file (PDF)":
https://bugs.launchpad.net/ubuntu/+source/evince/+bug/661724/+attachment/1699993/+files/output.pdf

When I build evince in Ubuntu 10.04 with the newer version of cairo, I can reproduce this problem, therefore I think it is really a cairo bug. 

I tried bisecting cairo from git, and it points to this commit as introducing the problem:
edcefa87ed0a8ff59b54ef9251182ce68f9158ba type1: Use correct glyph advance when subsetting type 1 fonts
http://cgit.freedesktop.org/cairo/commit/?id=edcefa87ed0a8ff59b54ef9251182ce68f9158ba

It's perfectly possible that I did something wrong in debugging this issue, but the above commit sounds at least potentially related.
Comment 1 Adrian Johnson 2010-10-23 18:15:14 UTC
Fixed in master with http://cgit.freedesktop.org/cairo/commit/?id=6dc0b19adb6da690ad5944623081b9cdb42de066
Comment 3 Marcel Stimberg 2010-10-25 08:32:50 UTC
Thanks for the fast response! The fix (the two 1.10 patches together) seems to work for me on the package in Ubuntu 10.10.
I added the patch to the Ubuntu package and am now waiting for others to test it.

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.