1

处理在 Safari 中打开网页并截取特定区域的 AppleScript(使用 Cmd+Shift+4)。但是我无法使屏幕捕获部分自动进行。

我正在使用 MouseTools 单击并移动鼠标。

set x to POSIX file ((POSIX path of (path to me)) & "/.." & "/MouseTools") as text
set pathName to POSIX path of x

tell application "Safari" to activate
open location "http://google.com"
delay 1
#do shell script quoted form of pathName & " -x 500 -y 167"
delay 1
tell application "System Events"
    #keystroke "3" using {command down, shift down}
end tell
delay 1
#do shell script quoted form of pathName & " -leftClick"

ETC...

击键命令适用于除屏幕截图之外的所有内容。下一个问题是在按住左键的同时移动鼠标。有人让这个工作还是有更好的方法?

4

1 回答 1

3

我很高兴看到您正在使用MouseTools。那是我的程序!但是,有一个命令行工具可以拍摄屏幕截图,称为 screencapture。我确定您应该使用它而不是您的 gui 方法。例如,以下是获取整个桌面图片的方法...

set imagePath to (path to desktop as text) & "screenCapture.png"
do shell script "screencapture -mx -T0 " & quoted form of POSIX path of imagePath

我确信有办法使用屏幕捕获来捕获屏幕的某个区域。稍微搜索一下它的手册页或谷歌应该会发现一些东西。

于 2012-01-07T10:49:44.897 回答