从 applescript 更改屏幕截图的目录
Change directory for screenshot from applescript
我正在制作一个脚本,通过截取 PhotoBooth 的屏幕截图来拍摄打开它的人的照片。但是,我不知道如何更改屏幕截图的目录,因为我刚启动 AppleScript。例如,我希望它进入文件夹
/Users/ADMIN/Desktop/AllFolders/Folder1/Folder2
我该怎么做?
这是我的代码:
tell application "Photo Booth"
activate
set volume output volume 0
tell application "Finder" to set visible of process "Photo
Booth" to false
end tell
property N : 0
set N to N + 1
delay 0.1
set picPath to ((POSIX path of (path to desktop)) & "Picture_" & N & ".png") as string
do shell script "screencapture -tjpg " & quoted form of
picPath
tell application "Photo Booth"
quit
end tell
下载 Mac 的 isightcapture 实用程序(Google 搜索,感谢 axel@intergalatic.de 使它成为免费软件!),并将文件存储在 Mac,例如在您的文档文件夹中。
通过 'do shell script' 指令在 Applescript 中使用此 shell 命令:
do shell script "~/Documents/isightcapture ~/Desktop/Photo.jpg"
“~/Documents”是您的 isightcapture 命令的路径:在您的 Documents 文件夹中。
'~/Desktop/Photo.jpg' 存储在 Desktop 上制作的名称为 Photo.jpg 的图片。当然,它可以是您的任何其他文件夹!
该命令有几个参数(isightcapture -h 将为您提供更多选项)
-t 选项指定照片格式:jpg(默认)、png、tiff、bmp
-w和-h定义图片大小
Do shell script ~/Documents/isightcapture -w 320 -h 240 -t png ~/Documents/Folder1/P1.png
此脚本拍摄一张照片并将其以 png 格式存储在文件 P1.png 中,该文件位于我的文档文件夹中的文件夹 Folder1 中。图片尺寸为320 x 240.
注意:此实用程序从 Snowleopard (OS 10.6) 开始运行,我对其进行了测试,直到 OS 10.12。我看不出它在下一个版本中不起作用的任何原因。
终于不用iSightCapture搞定了!
首先,我没有让照相亭不可见,而是在截屏后立即将其关闭。感谢@CJK 修复错误。
为了回答问题,我发现代码:
set picPath to ((POSIX path of (path to desktop)) & "Picture_" & N & ".png") as string
do shell script "screencapture -tjpg " & quoted form of picPath
是这个问题的答案。
我去掉了 N 加法以简化它。
而不是
POSIX path of (path to desktop)
我改变了路径。
set picPath to (POSIX path of "/Users/ADMIN/Desktop/folder1/folder2/nameoffile ") & ".png" as string
这有效:)
我正在制作一个脚本,通过截取 PhotoBooth 的屏幕截图来拍摄打开它的人的照片。但是,我不知道如何更改屏幕截图的目录,因为我刚启动 AppleScript。例如,我希望它进入文件夹 /Users/ADMIN/Desktop/AllFolders/Folder1/Folder2 我该怎么做?
这是我的代码:
tell application "Photo Booth"
activate
set volume output volume 0
tell application "Finder" to set visible of process "Photo
Booth" to false
end tell
property N : 0
set N to N + 1
delay 0.1
set picPath to ((POSIX path of (path to desktop)) & "Picture_" & N & ".png") as string
do shell script "screencapture -tjpg " & quoted form of
picPath
tell application "Photo Booth"
quit
end tell
下载 Mac 的 isightcapture 实用程序(Google 搜索,感谢 axel@intergalatic.de 使它成为免费软件!),并将文件存储在 Mac,例如在您的文档文件夹中。
通过 'do shell script' 指令在 Applescript 中使用此 shell 命令:
do shell script "~/Documents/isightcapture ~/Desktop/Photo.jpg"
“~/Documents”是您的 isightcapture 命令的路径:在您的 Documents 文件夹中。
'~/Desktop/Photo.jpg' 存储在 Desktop 上制作的名称为 Photo.jpg 的图片。当然,它可以是您的任何其他文件夹!
该命令有几个参数(isightcapture -h 将为您提供更多选项)
-t 选项指定照片格式:jpg(默认)、png、tiff、bmp
-w和-h定义图片大小
Do shell script ~/Documents/isightcapture -w 320 -h 240 -t png ~/Documents/Folder1/P1.png
此脚本拍摄一张照片并将其以 png 格式存储在文件 P1.png 中,该文件位于我的文档文件夹中的文件夹 Folder1 中。图片尺寸为320 x 240.
注意:此实用程序从 Snowleopard (OS 10.6) 开始运行,我对其进行了测试,直到 OS 10.12。我看不出它在下一个版本中不起作用的任何原因。
终于不用iSightCapture搞定了!
首先,我没有让照相亭不可见,而是在截屏后立即将其关闭。感谢@CJK 修复错误。
为了回答问题,我发现代码:
set picPath to ((POSIX path of (path to desktop)) & "Picture_" & N & ".png") as string
do shell script "screencapture -tjpg " & quoted form of picPath
是这个问题的答案。 我去掉了 N 加法以简化它。 而不是
POSIX path of (path to desktop)
我改变了路径。
set picPath to (POSIX path of "/Users/ADMIN/Desktop/folder1/folder2/nameoffile ") & ".png" as string
这有效:)