Photo Bordure image sur Mac M1 ?

lepetitpiero

Membre expert
Club iGen
20 Août 2005
9 617
675
52
Bonjour,

Je souhaite créer des bordures à mes images, j'ai vu que imagemagic permet de faire cela ... mais est-il compatible avec les Mac M1. Et comment j'installe cela ?

Sinon y a t'il une autre appli qui peut le faire Graficonverter ?

En faite j'aimerais faire derrière un script qui quelque soit la taille de mon image et quelles soit verticale ou horizontale ajouter une bordure. Que ce script ce lance après l'export de mon fichier depuis Capture one.


Pierre
 
Je complète: Avec affinité photo je peux faire des bordures, mais ce que ne fait pas affinité photo c'est des droplets comme photoshop... dommage.
 
Bonjour,

Peut-être un petit applescript qui ajouterait une bordure autour de la photo, bordure avec choix couleur et choix de la taille (en % de la taille image)

Ce script pourrait être mis en action de dossier, ce qui ferait que toute image qui arriverait dans ce dossier serait traitées...
 
Oui ça serait pas mal ça... par contre je ne sais pas faire ça (hélas) J'ai regardé pour image magic... compliqué à installé.
Mais une action de dossier serait pratique, je peux définir un dossier de sortie dans capture one.
Je peux apprendre à scripter s'il le faut ( faut que je trouve un auto u un bouquin sur le sujet) Merci de l'idée.

J'ai regarder automator, mais il ne sait faire cela que sur un format d'imagine donné... faudrait donc que je fasse trois process automator. (carré, vertical, horizontal) et pas vu ou choisir la couleur !!!

Pierre
 
Je te met un petit script pour tester, si cela te convient on essaiera de le finaliser pour ton besoin.

Là le script te demande de choisir une image (en .jpg) il ajoute un cadre rouge et enregistre le résultat sur le bureau sous le nom "nouveau.jpg"!

Edit: je suppose que tu sais lancer un applescript ?

Bloc de code:
--couleur R,V,B de 0 à 65535
-- cadre valeur en % de la taille de l'image.
tell application "Finder"
    set lechemin to choose file with prompt "Sélectionnez le fichiers image à traiter"
end tell
set unElement to lechemin
tell application "Image Events"
    launch
    set uneimage to open unElement
    copy dimensions of uneimage to {L, H}
    set cadre to (L * 0.04)
    pad uneimage to dimensions {L + cadre, H + cadre} with pad color {65535, 0, 0}
 
    set chemin to (path to desktop folder) as string
    set chemin to chemin & "nouveau.jpg"
    save uneimage in file chemin
end tell
 
Ok, je fais quoi des lignes de codes que tu me donne je met dans automator ?
 
Je précise au cas ou !

pour utiliser ce script:
Ouvrir l’application “Editeur de script” qui est dans Application—>Utilitaires
Choisir le bouton en bas à gauche “Nouveau document”, dans la fenêtre qui s’ouvre faire un copier-coller du script.
Cliquer sur le bouton en haut à gauche “Exécuter”

Edit: on a posté au même moment !
 
Curieux !

Qu'as tu sélectionné comme image (un fichier .JPG) ?
 
Oui et je viens d'essayer avec le fichier de la capture que j'ai publié j'ai le même message d'erreur

RQ: monterey sur Mac M1
 
Alors , je ne sais pas , je n'ai pas de mac M1, peut-être que la commande n'est plus supporté !

Je viens d'essayer avec ta capture, qui est un.png et pas .jpg, mais chez moi pas d'erreur ...
 
Aucune idée ! chez moi tout fonctionne...

N'ayant pas de Mac M1 je ne peux pas tester.

As-tu quand même essayé avec un fichier .JPG
 
Tu peux essayer d'autoriser dans :
  • Accessibilité
  • Accès complet au disque
  • Automatisation

Sinon plus qu' a passer par une application ... Tu peux même le faire dans "page" Bien que pas pratique...
 
J'ai autoriser image events dans les 3 sections que tu me cite... toujours rien.... comme si autre chose empêche de lire les fichiers.
 
Comme je ne peux pas essayer n'ayant pas de M1, j'ai refais un autre script qui agit sans système Event !

Ce script te demande de choisir un dossier contenant les fichiers à traiter.
Il ajoute une bordure blanche que j'ai défini à 200 pixels, à toutes les images contenues dans ce dossier et ses sous dossiers pour les extensions "jpg", "jpeg", "png", "tiff", "gif", "bmp", "psd".
Il fait la différence entre vertical et horizontal.

Regarde si là ça fonctionne , on fera des ajustement si cela marche...

Bloc de code:
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 lataille to do shell script "mdls -name kMDItemFSSize " & quoted form of POSIX path of lefichier --récupère la taille au fromat mdls
                    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 lataille to last text item of lataille
                    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 lacommande to "sips -Z " & lalargeur & " -p " & (lahauteur + 200) & " " & (lalargeur + 200) & " --padColor FFFFFF -i " & quoted form of lechemin
                    else
                        set lacommande to "sips -Z " & lahauteur & " -p " & (lalargeur + 200) & " " & (lahauteur + 200) & " --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
 
Ca marche à moitié ... avec les images carré OK. les verticales sortes carrées donc coupées. les horizontales OK

On est sur la bonne voie... merci à toi... donc je suppose que ensuite on va pouvoir mettre a sur une action de dossier
 
Lorsque tout fonctionnera correctement on en fera une action de dossier.
Par contre les verticales coupées, ??? chez moi çà fonctionne.
Peux-tu me donner les dimensions de ton image en pixels .