[cairo] problem with BitBlt

Mukul Sharma elitecoder.mukul at gmail.com
Sun Aug 31 02:23:59 PDT 2008


Use cairo_set_source_rgba(1,0,0,1);
and then use cairo_paint();

I think, this would work. On a sidenote, having a transparent background can
give you unexpected background color. I had tried doing the same thing, but
eventually settled on having a known background color as compared to having
a transparent background. For example, when I had a transparent background,
I obtained a black background. Thus, I painted it all in white and then
performed my drawings.

I cannot support your guess that BitBlt does not support Alpha values.
Because, BitBlt is simply a method to transfer a value of colour. The value
of color is calculated at Cairo's End and rendered at the Display end. Thus,
if Alpha values are not supported somewhere, it would be your display and
AFAK it cannot be BitBlt part or Cairo part.


On Sun, Aug 31, 2008 at 2:10 AM, Michael Gurnett <gurnett at glocalnet.net>wrote:

>  Tried with cairo_paint_with_alpha, but that didn't seem to work.
> ----- Original Message -----
> *From:* Michael Gurnett <gurnett at glocalnet.net>
> *To:* cairo at cairographics.org
> *Sent:* Sunday, August 31, 2008 2:27 AM
> *Subject:* [cairo] problem with BitBlt
> I have the following bit of code
> bckgrnd = new Graphics::TBitmap;
>    bckgrnd->Width = ClientWidth;
>    bckgrnd->Height = ClientHeight;
>  HDC hdc;
>  hdc=bckgrnd->Canvas->Handle;
>   cairo_pattern_t *pat;
>  cairo_surface_t *surface;
>  surface = cairo_win32_surface_create (hdc);
>  background = cairo_create (surface);
> ....
> The idea is the to draw on the background surface and BitBlt it on my paint
> routine. However, with the code above it appears that the initial drawing
> space is filled white (guessing rgba are all 1). Is there a way to get the
> initial drawing region to be transparant.
> Thanks
> Michael
> ------------------------------
> _______________________________________________
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo
> _______________________________________________
> cairo mailing list
> cairo at cairographics.org
> http://lists.cairographics.org/mailman/listinfo/cairo

Thanks and Regards,

Mukul Sharma
Centre for High Performance Embedded Systems
Nanyang Technological University, Singapore

"A person who runs from responsibilities, runs from life."

"It is easy to hate and it is difficult to love. This is how the whole
scheme of things works. All good things are difficult to achieve; and bad
things are very easy to get."
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.cairographics.org/archives/cairo/attachments/20080831/3014830e/attachment-0001.htm 

More information about the cairo mailing list