2

我正在寻找一种方法来做相当于 WindowFromPoint 和 GetWindowRect 在 Carbon/Cocoa 和 X11 中所做的事情。

WindowFromPoint - http://msdn.microsoft.com/en-us/library/ms633558%28VS.85%29.aspx GetWindowRect - http://msdn.microsoft.com/en-us/library/ms633519%28VS.85 %29.aspx

4

2 回答 2

4

我正在开发屏幕截图和屏幕录制应用程序……</p>

使用Quartz 窗口服务

我想……确定窗口的边界矩形,然后使用窗口的坐标来捕获屏幕该区域的位图……</p>

绝对使用 Quartz Window Services。

顺便说一句,它的一个功能是您可以单独捕获一个窗口,而窗口前面或后面都没有任何东西。执行此操作时,您不需要获取它的矩形。

…并将其保存到文件中…</p>

使用CGImageDestination

…或将其编码为视频流。

那部分我不确定。关于此事的示例代码(顾名思义,它使用 OpenGL 进行实际捕获)使用仅限 32 位的 QuickTime C API,而不是与 64 位兼容的 QuickTime Kit 来编写电影。

于 2010-05-21T10:17:05.777 回答
1

要回答这个问题的 X11 部分:您可以使用XQueryPointer的 child_return 来获得与 WindowFromPont 类似的功能。 XGetGeometry应该为您提供 GetWindowRect 信息。

于 2014-12-31T09:40:44.233 回答