I've been trying to get myself up to speed with state of printing 
support in Gtk, and I'm down to just a few conceptual questions. It 
looks like the general idea is to setup a callback to render with cairo 
one page at a time using a GtkPrintContext. From this I would speculate 
that on win32, a cairo GDI surface is used with the GDI device being a 
windows printer. On the *nix side GtkPrintContext might be using cairo 
post script surface, but more likely an image (memory buffer) surface is 
used. If the GtkPrintContext is setup correctly, then the device 
dependent details width, height, and dpi get used to build such a cairo 
memory buffer surface. I'm also betting Gtk is pulling all this from 
CUPS. In that case, there is then the issue of cairo's lack of support 
for color space beyond RGBA, as in printing, arises. Although that is a 
completely separate topic, and definitely something I can live with for 
now if all else works out. My main question is this. Somewhere the cairo 
RGBA color space must be mapped into a printer's device dependent color 
space such as CMYK. Is this mapping done inside Gtk using info resolved 
from cups, or is this done inside cups with filters?

Any help with my understanding would be appreciated. Most of this I'm 
just wildly guessing about since I haven't found it documented. I really 
would like to spare me the time of learning CUPS, which is why I want to 
understand how much, and what, work Gtk is doing for me.


_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to