tell application "Finder"
set chemin to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à traiter"
set nomdosfich to name of chemin as string
my inspecter(chemin) -- appel routine inspecter
end tell
on inspecter(un_dossier)
tell application "Finder"
set nomdos to name of un_dossier -- recupere le nom du dossier
set Fimage to {"jpg", "jpeg", "png", "tiff", "gif", "bmp", "psd"} -- liste des extensions a traiter dans Fimage avec fonction mdls
-- traitement des fichiers :
set les_fichiers to files of un_dossier --récupère tous les fichiers du dossier
repeat with chaque_fichier in les_fichiers -- répète avec chaque fichier du dossier en cour
-- traitement d'un fichier
tell application "Finder"
set nom to name of chaque_fichier --récupère le nom du fichier
set AppleScript's text item delimiters to {"."} -- defini le separateur
set lextension to get last text item of nom -- recupère l'extension
set lefichier to chaque_fichier as string --récupère le chemin du fichier au format chaine de caractères
if lextension is in Fimage then -- si fichier video de la liste Fimage
set lahauteur to do shell script "mdls -name kMDItemPixelHeight " & quoted form of POSIX path of lefichier --récupère la hauteur pixel format mdls
set lalargeur to do shell script "mdls -name kMDItemPixelWidth " & quoted form of POSIX path of lefichier --récupère la largeur pixel format mdls
set AppleScript's text item delimiters to {" "} -- defini le separateur
set lahauteur to last text item of lahauteur
set lalargeur to last text item of lalargeur
set lechemin to POSIX path of lefichier
if lalargeur > lahauteur then
set cadre to lalargeur * 0.04
set lacommande to "sips -Z " & lalargeur & " -p " & (lahauteur + cadre) & " " & (lalargeur + cadre) & " --padColor FFFFFF -i " & quoted form of lechemin
else
set cadre to lahauteur * 0.04
set lacommande to "sips -Z " & lahauteur & " -p " & (lalargeur + cadre) & " " & (lahauteur + cadre) & " --padColor FFFFFF -i " & quoted form of lechemin
end if
do shell script lacommande
end if
end tell
end repeat -- fichier suivant
-- traitement des dossiers :
set les_dossiers to folders of un_dossier
repeat with chaque_dossier in les_dossiers -- dossier suivant
my inspecter(chaque_dossier) -- appel pour dossier suivant
end repeat
end tell
end inspecter -- fin routine inspecter
tell application "Finder"
activate
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
tell application "Finder"
set chemin to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à traiter"
set nomdosfich to name of chemin as string
my inspecter(chemin) -- appel routine inspecter
end tell
on inspecter(un_dossier)
tell application "Finder"
set nomdos to name of un_dossier -- recupere le nom du dossier
set Fimage to {"jpg", "jpeg", "png", "tiff", "gif", "bmp", "psd"} -- liste des extensions a traiter dans Fimage avec fonction mdls
-- traitement des fichiers :
set les_fichiers to files of un_dossier --récupère tous les fichiers du dossier
repeat with chaque_fichier in les_fichiers -- répète avec chaque fichier du dossier en cour
-- traitement d'un fichier
tell application "Finder"
set nom to name of chaque_fichier --récupère le nom du fichier
set AppleScript's text item delimiters to {"."} -- defini le separateur
set lextension to get last text item of nom -- recupère l'extension
set lefichier to chaque_fichier as string --récupère le chemin du fichier au format chaine de caractères
if lextension is in Fimage then -- si fichier video de la liste Fimage
set lahauteur to do shell script "mdls -name kMDItemPixelHeight " & quoted form of POSIX path of lefichier --récupère la hauteur pixel format mdls
set lalargeur to do shell script "mdls -name kMDItemPixelWidth " & quoted form of POSIX path of lefichier --récupère la largeur pixel format mdls
set AppleScript's text item delimiters to {" "} -- defini le separateur
set lahauteur to last text item of lahauteur
set lalargeur to last text item of lalargeur
set lechemin to POSIX path of lefichier
display dialog "la largeur est de : " & lalargeur & " la hauteur est de : " & lahauteur
if lalargeur > lahauteur then
set cadre to lalargeur * 0.04
set lacommande to "sips -Z " & lalargeur & " -p " & (lahauteur + cadre) & " " & (lalargeur + cadre) & " --padColor FFFFFF -i " & quoted form of lechemin
else
set cadre to lahauteur * 0.04
set lacommande to "sips -Z " & lahauteur & " -p " & (lalargeur + cadre) & " " & (lahauteur + cadre) & " --padColor FFFFFF -i " & quoted form of lechemin
end if
do shell script lacommande
end if
end tell
end repeat -- fichier suivant
-- traitement des dossiers :
set les_dossiers to folders of un_dossier
repeat with chaque_dossier in les_dossiers -- dossier suivant
my inspecter(chaque_dossier) -- appel pour dossier suivant
end repeat
end tell
end inspecter -- fin routine inspecter
tell application "Finder"
activate
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell