Yes, I am really accessing a GDK window. pb = gdk_pixbuf_get_from_drawable(NULL, GDK_DRAWABLE(window),
Any other idea? Thanks. On Sun, Mar 23, 2008 at 11:34 AM, Luis Menina <[EMAIL PROTECTED]> wrote: > Are you really sure you're accessing the GdkWindow and not the GtkWindow ? > > GtkWindow *toplevel = gtk_window_new(GTK_WINDOW_TOPLEVEL); > > [add some graphical stuff in that GtkWindow] > > /* and then, later on... */ > GdkWindow *window = toplevel->window; > > > if (window != NULL) > { > int x, y, width, height, depth; > GdkPixbuf *pb; > > > gdk_window_get_geometry (window, &x, &y, &width, &height, &depth); > > pb = gdk_pixbuf_get_from_drawable(NULL, > GDK_DRAWABLE (window), > NULL, 0, 0, 0, 0, width, height); > > gdk_pixbuf_save(pb, filename, "png", NULL, > "compression", "9", > NULL); > } > > ying lcs a écrit : > > > > Luis, > > > > The 'window' object is from: > > > > gtk_window_new(GTK_WINDOW_TOPLEVEL) > > > > I do see it works something, while other times, I see the screenshot > > get out of place (as shown in the image I attached). > > > > I suspect my window is obscured during the capture. > > > > So how can I programmatic make sure my window is not obscured before > > the catpure? > > > > I have tried adding: > > > > gdk_window_raise(window); > > gdk_flush(); > > > > > > But it does not always help. > > > > Thank you for any more pointers. > > > > > > > > > > On Thu, Mar 20, 2008 at 7:37 PM, Luis Menina <[EMAIL PROTECTED]> wrote: > >> Hi, > >> > >> where does your "window" object come from ? Could you please give us the > >> code where you initilized it ? I've tried to adapt your code in a simple > >> example, and it just works... I get a screenshot of what is in the > >> window, without the window decoration. > >> > >> Cheers, > >> > >> Luis > >> > >> ying lcs a écrit : > >> > >> > >>> Hi, > >> > > >> > I have a question of using gdk_pixbuf_get_from_drawable(). I have the > >> > following code which save the gdk window to a png file. > >> > But something I get something which is totally not what is displayed > >> > on the window. Can you please tell me what am I missing? > >> > > >> > GdkWindow *window ; > >> > > >> > if (window != NULL) { > >> > > >> > int x, y, width, height, depth; > >> > > >> > gdk_window_get_geometry( window, &x, &y, &width, &height, &depth > ); > >> > > >> > printf (" width=%d, height=%d\n", width, height); > >> > > >> > /* copy the pixmap from the treeview and from the title */ > >> > pb = gdk_pixbuf_get_from_drawable(NULL, > >> > GDK_DRAWABLE(window), > >> > NULL, 0, 0, 0, 0, width, height); > >> > > >> > > >> > /* save the pixbuf to a png file */ > >> > gdk_pixbuf_save(pb, filename, "png", NULL, > >> > "compression", "9", > >> > NULL); > >> > } > >> > > >> > Thank you. > >> > > >> > > >> > > ------------------------------------------------------------------------ > >> > > >> > _______________________________________________ > >> > gtk-app-devel-list mailing list > >> > gtk-app-devel-list@gnome.org > >> > http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list > >> > > > _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list