我需要能够识别用户屏幕上的单个窗口并对其进行屏幕截图。屏幕数据将存储在内存中,而不是写入磁盘。

命令行工具 /usr/sbin/screencapture 或 Grab 实用程序已经支持这一点(尽管它们的功能不够广泛,不足以证明我将它们作为子进程启动)。

参考资料/提示

  • nm /usr/sbin/screencapture 返回私有 Cocoa 接口,包括似乎执行此操作的 _CGSGetSharedWindow。
  • 第三方应用程序 Snapzpro 执行此操作(但不提供源代码)
有帮助吗?

解决方案

Mac OS X 10.5 引入了 石英窗口服务 API 就是为了做到这一点。

其他提示

首先想到的是 MacFuse 的 GrabFS。来源是 这里.

Command+Shift+4 激活屏幕截图选择,然后点击空格键选择整个窗口。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top