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

Russell Shaw rjshaw at netspace.net.au
Thu Jan 19 00:37:52 PST 2006


Owen Taylor wrote:
> On Thu, 2006-01-19 at 15:40 +1100, Russell Shaw 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.
>>
>>What about overhead transparencies or other transparent film printers?
>>
>>...
>>
>>
>>>The final result of drawing to a PS/PDF surface does *not* 
>>>have alpha, no matter what your best intention. (Even you print
>>>to overhead slides, the alpha there is just the color white,
>>>and has no relation to the alpha of your surface.)
>>
>>If you print red with alpha=0.5, you should get a semi transparent
>>printout onto clear film.
> 
> 
> The question is, do you get something different with:
> 
>  alpha=0.5 red

should be translucent

>  alpha=1.0 pink

should be solid pink

> My understanding is that with PS/PDF, no, you don't. The infrastructure
> just isn't really there for supporting printers with white opaque
> inks. (Such things might exist for printing labeling onto colored
> plastic, say.)

Even if garden variety home printers don't interpret alpha, there easily
could be in the future. Someone might even write a driver for a current
printer that *can* do it. It would be useful to have the capability there,
even for mathematical consistancy between printers and video display
devices.

Some large industrial printers are custom made, and could be designed
for semi-transparent printing on things like glass windows or plastic
sheet.


More information about the cairo mailing list