PS/PDF API Change Proposal: (Re: [cairo] Semantics of transparent objects)

Owen Taylor otaylor at
Thu Jan 19 06:26:00 PST 2006

On Thu, 2006-01-19 at 08:06 -0500, Michael Sweet wrote:
> Owen Taylor wrote:
> > I can't really object too strongly to this change, since the the model
> > where a PS/PDF surface matches a CAIRO_CONTENT_COLOR surface is still
> > available.
> > 
> > But I'm really not very comfortable with the with the idea of a 
> > CAIRO_CONTENT_COLOR_ALPHA PS/PDF surface; I have concerns about 
> > efficiency, concerns about consistency with the rest of cairo,
> > and concerns about utility.
> > 
> > What is destination alpha good for?
> > 
> >  A) It's good if you want to end up with an object with 
> >     destination alpha. You want to draw a transparent
> >     clock that you'll combine with the rest of your 
> >     desktop. This doesn't really seem relevant to printing
> >     to me. In the end, you are going to end up with an 
> >     opaque piece of paper.
> Discussion of "transparency" media aside, printers can and do
> print on colored media, and while rare several commercially-
> available printers offer "white" ink for printing, too.


> > We're going to have enough trouble producing good high-quality
> > output for the normal case where they do that by simply drawing
> > objects with OVER, that introducing a whole other code path
> > of questionable utility that probably will never be optimized
> > seems dubious to me.
> IMHO, the use cases for PS output with alpha is such that
> inefficient (large) PS output is not unusual today, so it
> would be OK to just spit out an image + mask and not do any
> optimization for that path.
> If you don't support it, then graphics arts applications will
> need to bypass Cairo when printing, which is something I'd
> like to avoid...  Apple made this mistake (plus a few others)
> in early versions of MacOS X, and it is only recently that
> Adobe and co. have enough functionality in the new Quartz +
> Print Manager APIs to utilize the standard print paths.

Hmmm. In earlier discussions we've already pretty much decided
against supporting various advanced printing features - spot
colors, CMYK and so forth. Things get a lot simpler when there
is a single unique representation of a color. 
(As sRGB not restricted to [0,1])

It may be that this falls into the same category.

But if not, should be noted that what is currently implemented for 
CAIRO_CONTENT_COLOR_ALPHA is *not* compatible with the white
ink model. What you get is an entire page printing with the
a base of the white ink, and no possibility for showing the
underlying media.

Does PS or PDF support more than 1-bit of alpha in this context?


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url :

More information about the cairo mailing list