hmmm...     I noticed that gdk_pixbuf_render_to_drawable_alpha() is
deprecated...   the recommended replacement:   gdk_draw_pixbuf() fixes
the bug... can we use this or are there outstanding support issues?

GdkGC *gc = renderer->gc;
gdk_draw_pixbuf(renderer->pixmap, gc, rgba, 0, 0, x, y, width, height,
GDK_RGB_DITHER_NONE, 0, 0);

....instead of:
gdk_pixbuf_render_to_drawable_alpha(rgba,
                                             renderer->pixmap,
                                             0, 0,
                                             x, y,
                                             width, height,
                                             GDK_PIXBUF_ALPHA_FULL,
                                             128,
                                             GDK_RGB_DITHER_NONE,
                                             0, 0);


regardless, i will get to the bottom of the transparency issue/invalid
sections of GdkPixbuf that we are writing/overwriting...

tk

On Apr 2, 2005 10:52 PM, Tom Kast <[EMAIL PROTECTED]> wrote:
> thanks a lot guys. i am looking at the GdkPixmap depth issue in
> DiaGdkRenderer now.  i will also look into stefan's other idea about
> pixmap regions being drawn then overdrawn without clearing (before
> drawing the text)...
> 
> can i say wow?   ...it sure did not take you long to find that stefan...
> 
> On Apr 2, 2005 12:44 PM, Lars Clausen <[EMAIL PROTECTED]> wrote:
> > On Fri, 2005-04-01 at 10:32 +0200, Stefan wrote:
> > > some minutes ago I observed the bahaviour on drawing text with
> > > gdk_pixbuf_render_to_drawable_alpha() in diagdkrenderer.c:draw_string().
> > > Supporting that, I used a fix alpha threshold in 'pixels[i*stride+j*4+3]
> > > = graybitmap[i*rowstride+j];', i.e. 128. And what I explored is, that in
> > > the situations the font is drawn ugly, now the intensity of the color
> > > incresed. So ... there are some regions are still drawn and are
> > > overdrawn by this method. The transparency then causes the uglyness and
> > > egdy font.
> >
> > That sounds much more like something that could actually cause this bug
> > that what we've look at before.
> >
> > > So the problem is actually a problem with uninvalidated, still present
> > > regions in renderer->pixmap which have to be cleared, before redrawing
> > > the text again. The update-area logic doesn't pay attention on this.
> >
> > Notably, the effect also happens under libart renderer.  Which makes
> > sense with the explanation.
> >
> > -Lars
> >
> > --
> > Lars Clausen <[EMAIL PROTECTED]>
> >
> > _______________________________________________
> > Dia-list mailing list
> > [email protected]
> > http://mail.gnome.org/mailman/listinfo/dia-list
> > FAQ at http://www.gnome.org/projects/dia/faq.html
> > Main page at http://www.gnome.org/projects/dia
> >
> >
>
_______________________________________________
Dia-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://www.gnome.org/projects/dia/faq.html
Main page at http://www.gnome.org/projects/dia

Reply via email to