On 2010-03-18 16:26-0400 Hezekiah M. Carty wrote: > The fix for pngcairo is fairly straightforward. The pngcairo device > was using an RGB surface rather than an ARGB surface, so the Cairo > drawing routines were treating it like it does not support > transparency (which it didn't). Changing the pngcairo to use an ARGB > surface fixes this issue and gives output with a properly transparent > background, like the svgcairo case. > > I have committed this change as revision 10847.
Thanks, Hez. Your fix works here as well. > > [...] From what I have read so > far, having nicely window-manager independent transparent backgrounds > for the xcairo (and xwin and possiblt qtwidget) devices would require > pulling in more X dependencies and would only work with window > managers which support such niceties. I read some stuff like that as well on the web, but I think it must be quite dated information. To show this, note that the ImageMagick "display" application is a GUI that ultimately interacts with the X server on Linux. Now that -dev pngcairo is working properly, you can test whether your X server renders transparent backgrounds by running examples/c/x02c -dev pngcairo -bg 0000ff_0.3 -fam -o test.png followed by display -immutable test.png.2 In my case I have access to two different X servers for two very different boxes. I use the Debian Lenny X server/kernel 2.6.26 for my newish Intel box with g33 chipset/gma 3100 and the Debian Testing X server/kernel 2.6.32 with my old shuttle box (the X-terminal) with embedded SiS hardware with reverse-engineered 2D X driver. In both cases, I get transparent results with "display -immutable". David had similar success with display -immutable, although in his case display might be interacting with something different than X (glitz?), but at minimum his result showed that transparent backgrounds can be properly rendered on Mac OS X. [out of order] Should I back-out the xcairo device change [to insert an obscuring layer between pages]? Yes, please. Of course, you first have to figure out a way to not stack xcairo pages on top of previous pages. I was thinking along the lines that when a page was started the widget/GUI associated with the previous page should be properly terminated and a whole new widget/GUI initialized for the new page. But maybe you would not have to go to that extreme... Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel