[cairo-bugs] [Bug 14100] problem with postscript patterns

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Jan 17 05:55:23 PST 2008


Adrian Johnson <ajohnson at redneon.com> changed:

           What    |Removed                     |Added
                 CC|                            |ajohnson at redneon.com
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #3 from Adrian Johnson <ajohnson at redneon.com>  2008-01-17 05:55:20 PST ---
Cairo 1.4.10 had full page fallbacks. If anything was drawn on the page that is
not supported by the PostScipt backend it generated a full page fallback image.

In your second example you create a pattern from an ARGB32 image. As PostScript
does not support transparency it assumes that the ARGB32 image contains
transparency and creates a fallback image. If you change the ARGB32 to RGB24
you will not get the fallback image.

Cairo 1.5.6 has finer-grained fallbacks. It will only use fallback images for
the unsupported regions of the page. In addition it makes some attempt to
flatten transparency. When it sees the ARGB32 image it will check if you are
actually using transparency in the image before deciding it is unsupported. In
addition it will also check if anything is already drawn underneath the image.
If nothing is underneath it will blend the color in with white to remove the

In cairo 1.5.6 the PDF and PostScript backends now support cairo_push_group()
and cairo_surface_create_similar() so you could create your pattern without
using an image surface. This will create the pattern with PostScript drawing
commands instead of embedding a little image.

Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

More information about the cairo-bugs mailing list