Makoto Satoh
makot****@yahoo*****
2005年 4月 16日 (土) 01:02:30 JST
佐藤です。 ; はまってます。 PNGイメージは生成されますが、サイズも色も指定と違い、線も現れません。 C側でintを要求し、intを返す場合、 (define-cproc gd-image-color-allocate (im::<gd> r::<int> g::<int> b::<int>) " int clr_idx; if (im->im == NULL) Scm_Error(\"Image object was passed as NULL.\"); clr_idx = gdImageColorAllocate(im->im, SCM_INT_VALUE(r), SCM_INT_VALUE(g), SCM_INT_VALUE(b)); SCM_RETURN(SCM_MAKE_INT(clr_idx));") と書きました。 SCM_INT_VALUE(Schemeのint) => Cのint SCM_MAKE_INT(Cのint) => Schemeのint という理解で合ってますか? ; どうもint指定がちゃんと伝わってないようなので。 よろしくご教授下さい。 ---- ソースは、http://www.ipri.ngb.co.jp/svn/Gauche-gd で見られます。 $ svn co http://www.ipri.ngb.co.jp/svn/Gauche-gd で取寄せることもできます。 私の環境は、Debian Sarge、Gauche-0.8.3(tgz版、--enable-multibyte=euc-jp --enable-threads=pthreads --with-slib=/usr/share/slib)、 libgd.so -> libgd.so.2.0.33 libpng.so -> libpng12.so -> libpng12.so.0 -> libpng12.so.0.1.2.8 となっています。