yasuy****@javao*****
yasuy****@javao*****
2004年 6月 25日 (金) 13:26:25 JST
えんどうです。
> スクリーンに描画された画像を保存したいので、とりあえず
(略)
> などというコードを追加してみました。
その後以下のように書いて動かしてみました。
((member kv (list GDK_s))
(let*-values
(((w h) (gdk-drawable-get-size (ref widget 'window))))
(let*
((colormap (gdk-drawable-get-colormap (ref widget 'window)))
(pixbuf (gdk-pixbuf-new GDK_COLORSPACE_RGB #f 8 w h)))
(begin
(gdk-pixbuf-get-from-drawable
pixbuf (ref widget 'window) colormap 0 0 0 0 w h)
(gdk-pixbuf-save #?=pixbuf "test.png" "png")
))))
するとこのようなエラーが発生しています。
$ ./fixpoint gauche-update.scm
#?=pixbuf
#?- #<<gdk-pixbuf> 0x866b8f0>
(fixpoint:29175): GdkPixbuf-CRITICAL **: file gdk-pixbuf-io.c: line 1403 (gdk_pixbuf_savev): assertion `error == NULL || *error == NULL' failed
*** ERROR: Pixbuf save failed: (null)
Stack Trace:
_______________________________________
0 (#<id 0x84fc690 gauche.parseopt::let> ((window-mode #f)) (#<id 0x8 ...
[unknown location]
GError が nullだと言っているように思えます。
gtk-pixbuf-save に GError を明示的に与えるべきなんでしょうか...
--
ENDO Yasuyuki <yasuy****@javao*****>
http://www.javaopen.org/~yasuyuki/ (Personal/Japanese Only)
http://www.javaopen.org/jfriends/ (Japanese Only)