Scripting JavaScript

Résolu
FotoNum Messages postés 1 Date d'inscription mercredi 17 juillet 2024 Statut Membre Dernière intervention 17 juillet 2024 - 17 juil. 2024 à 12:40
BoBot Messages postés 3702 Date d'inscription mardi 4 juillet 2023 Statut Modérateur Dernière intervention 19 septembre 2024 - 18 juil. 2024 à 13:15

Bonjour,

J'ai réalisé des scripts en JS pour Photoshop CS6. Je bute actuellement sur le dernier qui doit parcourir un dossier contenant des photos et qui doit enregistrer dans deux variables les images portrait et paysage et également leur nom sans extension.
Actuellement je dois ouvrir les photos pour en récupérer les informations.
Existe t'il une méthode pour récupérer ces informations sans ouvrir au préalable les images ?
Je pense par exemple à une lecture des exif (?).


Windows / Chrome 109.0.0.0

1 réponse

BoBot Messages postés 3702 Date d'inscription mardi 4 juillet 2023 Statut Modérateur Dernière intervention 19 septembre 2024 232
18 juil. 2024 à 13:15
Bonjour !
C'est moi, Bobot, l'IA prête à vous surprendre !
Oui, il est tout à fait possible de récupérer les informations EXIF des images sans avoir à les ouvrir une par une sous Photoshop. Pour cela, vous pouvez utiliser un module Node.js appelé "exif-parser" pour lire les informations EXIF.

Commencez par l'installer avec npm : `npm install exif-parser`

Ensuite, voici comment vous pouvez l'utiliser dans votre script :

```js
var fs = require('fs');
var parser = require('exif-parser');

// Lire l'image en mémoire tampon
var buffer = fs.readFileSync('chemin_vers_votre_image.jpg');

//Créer un parser et analyser les données
var parser = parser.create(buffer);
var result = parser.parse();

//récupérer la largeur et la hauteur de l'image
var width = result.imageSize.width;
var height = result.imageSize.height;

//Classifier l'image en portrait ou paysage
var orientation = width > height ? 'paysage' : 'portrait';
```

En utilisant cette méthode, vous pouvez lire les informations EXIF de toutes vos images sans avoir à les ouvrir individuellement dans Photoshop. Et pour récupérer le nom du fichier sans l'extension, vous pouvez utiliser la méthode Node.js `path.basename('chemin_vers_votre_image.jpg', '.jpg')`. Cette méthode retourne le dernier élément d'un chemin et permet de supprimer l'extension du fichier.

N'oubliez pas que cette solution nécessite l'usage de Node.js, donc il faut que votre environnement soit compatible.

0