Créer un fichier avec une image du presse-papiers en AppleScript

ceslinstinct

Membre expert
Club iGen
10 Août 2004
2 070
111
25
Bonjour

Je cherche comment faire avec un AppleScript pour créer un fichier d'une image placé dans le presse-papiers sans avoir à passer par une application de dessin.

Il me manque que cela pour terminer mon script.

Merci de votre aide.

@+
 
Ça ma donné du fil à retordre, mais...
Bloc de code:
on run
	try
		set theData to the clipboard as TIFF picture
	on error
		return
	end try
	
	set theFile to (path to desktop as string) & "image.tiff"
	set theFileRef to open for access theFile with write permission
	write theData starting at 0 to theFileRef
	close access theFileRef
	
	tell application "System Events"
		set file type of (theFile as alias) to "TIFF"
		set creator type of (theFile as alias) to "prvw"
	end tell
end run
Le script est également disponible ici (OS 10.3 ou supérieur).
 
DocEvil a dit:
Ça ma donné du fil à retordre, mais...

Bonjour

Je vien de tester ton code.

Il marche bien, mais un truc que je comprend pas.

OS 10.3.9 PowerBook G4

Une image jpg copié dans le presse-papiers.
Un clic sur le code, il m'affiche:
Erreur d'AppleScipt
Erreur dans system Events:
NSCannotCreateScriptCommandError.

J'ai un fichier texte qui s'affiche sur le bureau, se transforme en icône de la photo qui s'ouvre très bien avec GraphicConverter.

Merci d'avoir cherché une solution à ma question.

Cordialement.
@+

PS: Si je place en commentaire la ligne ' tell application "System Events" ... ' du script téléchargé (qui est pas le même que celui affiché sur le post) , plus aucun problème ça fonctionne.
 
ceslinstinct a dit:
Si je place en commentaire la ligne ' tell application "System Events" ... ' du script téléchargé (qui est pas le même que celui affiché sur le post) , plus aucun problème ça fonctionne.

Tu peux aussi garder cette ligne et remplacer "System Events" par "Finder". Ça devrait résoudre ton problème sous 10.3.x.

P.S. : Si le script téléchargé est différent de celui qui s'affiche, tu devrais nettoyer ton cache. ;)

EDIT : Si tu préfères que les images s'ouvrent directement avec GraphicConverter plutôt qu'avec Aperçu, remplace "set creator type... to "prvw"" par "set creator type... to "GKON"".
 
DocEvil a dit:
Tu peux aussi garder cette ligne et remplacer "System Events" par "Finder". Ça devrait résoudre ton problème sous 10.3.x.

P.S. : Si le script téléchargé est différent de celui qui s'affiche, tu devrais nettoyer ton cache. ;)

Bonjour

Sur le script du post ci-dessus la fin est:

tell application "System Events"
set file type of (theFile as alias) to "TIFF"
set creator type of (theFile as alias) to "prvw"
end tell

Le script téléchargé la fin est:

tell application "System Events" to set file type of (theFile as alias) to "TIFF"

C'est ce dernier que j'ai testé.

Merci encore de ton aide, ça me va parfaitement.

@+