AppleScript: Skärmbild (Fönsterbild?)

Tråden skapades och har fått 5 svar. Det senaste inlägget skrevs .
1

Hur fanken kan man med AppleScript ta en skärmbild?
Enda kruxet är att det måste ske med standardsystemet, d.v.s. inga extra progam installerade. Går det?

Helst vill jag bara ta en bild av aktivt fönster men det är inget krav.

Känns som att det borde vara ett ganska enkelt problem men jag kan inte komma på hur man gör.

  • Medlem
  • 2004-09-16 20:33

Följande hackade jag precis ihop.. Använder sig utav screencapture och sips från Unix delen för att generera ett "skärmskott" i jpeg format istället för default PDF. Notera dock att det tar en bild av hela bildskärmen vilket är i princip samma sak som att trycka SHIFT+ÄPPLE+3.

tell application "Finder"
	activate
	set thefolder to "Screendump"
	if exists folder thefolder then
		set thefolder to item thefolder as alias
	else
		make new folder with properties {name:"Screendump"}
		set thefolder to result
	end if
	count files in folder "Screendump"
	set i to result
end tell
set i to i + 1
set temp to i as string
set pdfnamn to temp & ".pdf"
set jpegnamn to temp & ".jpg"
set utfor to "/usr/sbin/screencapture -m -x ~/Desktop/Screendump/" & pdfnamn
do shell script utfor
set del1 to "/usr/bin/sips -s format jpeg ~/Desktop/Screendump/" & pdfnamn
set del2 to " -o ~/Desktop/Screendump/" & jpegnamn
set utfor to del1 & del2
do shell script utfor
set utfor to "rm ~/Desktop/Screendump/" & pdfnamn
do shell script utfor

Mvh
/Ulf

  • Medlem
  • International user
  • 2004-09-16 21:07

Detta känns enklare:

tell application "Finder" to activate
tell application "System Events"
	keystroke "#" using {command down}
end tell
  • Medlem
  • International user
  • 2004-09-16 21:16

V ill man inte aktivera "Finder" går det också bra:

tell application "System Events"
	tell process "Finder"
		keystroke "#" using {command down}
	end tell
end tell
  • Medlem
  • 2004-09-16 21:50

Snyggt !

Det där med keystroke har jag missat. Enda nackdelen är att det fortfarande är PDF. Men det finns ju en mängd små program som fixar det automatiskt.

Mvh
/Ulf

Kanon Wire! Precis vad jag letade efter.

1
Bevaka tråden