Bug 14578

Summary: Poppler should paint images with CAIRO_EXTEND_PAD
Product: poppler Reporter: Carl Worth <cworth>
Component: cairo backendAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 12143    
Attachments: PDF file to demonstrate the bug
Current, undesired output from poppler (yes, cairo's fault!)
Desired rendering

Description Carl Worth 2008-02-20 03:30:37 UTC
Now, I feel somewhat bad posting this bug, because I know poppler would
have liked to have done better in this regard a long time ago, and it's
only been cairo that's holding it back. But, now, finally, with the
upcoming cairo 1.6 release, there will finally be a CAIRO_EXTEND_PAD
so that scaled images can be drawn without blurred edges.

There's not any way for the PDF file to hint what kind of filtering is
desired is there? If so, then cairo would love to hint exactly what's
desired.

-Carl
Comment 1 Carl Worth 2008-02-20 03:31:37 UTC
Created attachment 14439 [details]
PDF file to demonstrate the bug
Comment 2 Carl Worth 2008-02-20 03:32:15 UTC
Created attachment 14440 [details]
Current, undesired output from poppler (yes, cairo's fault!)
Comment 3 Carl Worth 2008-02-20 03:32:42 UTC
Created attachment 14441 [details]
Desired rendering
Comment 4 Carlos Garcia Campos 2009-06-03 05:28:44 UTC
This bug seems to be fixed after applying patch attached to bug #9860
Comment 5 Carlos Garcia Campos 2009-07-19 08:50:24 UTC
(In reply to comment #0)
> There's not any way for the PDF file to hint what kind of filtering is
> desired is there? If so, then cairo would love to hint exactly what's
> desired.

Yes, the 'Interpolate' field in the Image dictionary, now CAIRO_FILTER_FAST is used when Interpolate flag is not present, and CAIRO_FILTER_BEST otherwise. In addition, CAIRO_EXTEND_PAD is used in drawImage() method now, we still have to fix the other image methods, though. 





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.