有谁知道如何使用 Ruby 使用 Win32 的 BitBlt() ?看起来您需要使用目标 DC(设备上下文),Ruby 如何处理这个问题?我使用 GetPixel() ,即使获取 100 个像素也非常慢(大约需要 10 秒)。谢谢。

有帮助吗?

解决方案

二卡尔的其它后:使用的win32截图 http://github.com/jarmo/win32screenshot

其他提示

如何用 C++ 将所有图像处理代码编写为 Win32 可执行文件,并将其作为单独的进程启动,或者使用 Ruby 从 Ruby 调用它? Win32API 班级?这样做是有意义的,而不是用 Ruby 编写一个永远不会表现良好的程序。

我只是想指出,我看到类似的事情。 GetPixel是在Vista上极其缓慢。我确定这是你正在使用的Aero的事情时的情况。如果设置桌面主题的“经典”设置之一,它再快的。和〜10秒OP的估计是没有错的,信不信由你。这真是极其缓慢。

我也一样,要寻找在Ruby中的BitBlt。我希望我需要弄清楚/写,但希望别人已经发布了一个例子。

我不会走很远埃德;可能你只希望做一些相对简单和平常的事情,一个正常的GUI会做。对于这一点,这样的文库已经存在,并且不需要被写入。

一个示例将是 wxRuby

我怕我不熟悉它,但也许它已经提供了一些屏幕抓取工具的方法。

scroll top