如何收听屏幕截图

时间:2010-07-01 15:47:21

标签: objective-c cocoa macos

我是否可以听取OSX的内置屏幕捕获功能,以便我自己处理文件而不是osx呢?

1 个答案:

答案 0 :(得分:4)

有几个选择。

  1. 只需使用Ctrl-Cmd-Shift-34代替Cmd-Shift-34。这不会将文件保存到桌面,而是将数据保存在剪贴板/粘贴板中。我不知道官方提到这个的地方,here is one。然后,您可以通过NSPasteboard获取数据,请参阅here

  2. 只要在指定文件夹中创建文件,就可以使用FSEvents进行通知。然后,您可以在系统将其保存到桌面后立即重命名屏幕截图文件。请注意,屏幕截图的文件名取决于您在“系统偏好设置”中选择的语言环境。因此,如果您想让您的程序在非英语机器上运行,请务必小心。

  3. 如果您只是以编程方式截取屏幕截图,则可以使用命令行工具screencapture,请参阅man page

  4. 当然,您可以入侵系统并接管Cmd-Shift-3,4的处理,例如Snapz Pro。如果你选择那种方式,你就知道自己在做什么。