Ce que je veux faire, c'est sélectionner un tas d'images de dimensions variables et appliquer uniformément une échelle en pourcentage pour les redimensionner. Le flux de travail se rapproche beaucoup de ça. Mais je ne peux pas être plus précis au dixième le plus proche. En pixels, il ne prend en compte que la longueur alors que je veux la largeur. J'ai donc pensé qu'aussi longtemps que c'est en AppleScript, je peux spécifier facilement l'échelle que je veux. J'ai l'intention d'exécuter le script comme un service.
Réponse
Trop de publicités?Vous pouvez utiliser une action "Exécuter un script Shell" et sips
pour réduire la taille de vos images à n'importe quelle valeur. Ajoutez une action "Exécuter un script Shell", assurez-vous que la méthode d'entrée est définie sur "stdin" (devrait être la valeur par défaut) et insérez le script suivant
ÉCHELLE=500
while IFS= read file; do
sips --resampleWidth $(($(sips -g pixelWidth "$file" |
sed -n -e '/pixelWidth/s/.*pixelWidth: //p')
* $ÉCHELLE / 1000)) "$file" --out "${file%/*}/redimensionné-${file##*/}"
done
L'arithmétique Shell prend en charge uniquement des valeurs entières, vous devrez donc spécifier le facteur d'échelle en milliers (par exemple 424 pour 42,4%)