如何复制Gdk.image?

发布于 2024-07-22 10:00:31 字数 73 浏览 3 评论 0原文

是否可以使用 Ocaml 的 lablgtk2 制作 Gdk.image 对象的副本? 我试图找到“复制”或“克隆”方法但失败了。

Is it possible to make a copy of Gdk.image object using lablgtk2 for Ocaml?
I tried to find 'copy' or 'clone' methods but failed.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

女皇必胜 2024-07-29 10:00:31

也许你可以使用 pixbuf ? 它可以从任何可绘制对象创建。

Maybe you could use pixbuf? It can be created from any drawable.

撧情箌佬 2024-07-29 10:00:31

这是我笨拙的解决方法:

let copy_image image =

    let w, h = Image.width image, Image.height image in 

    let copy = Image.create ~kind: `FASTEST ~visual: (Image.get_visual image) 

        ~width: w 

        ~height: h in

    for x = 0 to w-1 do

        for y = 0 to h-1 do

            Image.put_pixel copy ~x:x ~y:y (Image.get_pixel image ~x:x ~y:y)

        done

    done;
    copy

Here is my clumsy workaround:

let copy_image image =

    let w, h = Image.width image, Image.height image in 

    let copy = Image.create ~kind: `FASTEST ~visual: (Image.get_visual image) 

        ~width: w 

        ~height: h in

    for x = 0 to w-1 do

        for y = 0 to h-1 do

            Image.put_pixel copy ~x:x ~y:y (Image.get_pixel image ~x:x ~y:y)

        done

    done;
    copy
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文