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 4898 Date d'inscription mardi 4 juillet 2023 Statut Modérateur Dernière intervention 27 mars 2025 - 18 juil. 2024 à 13:15
BoBot Messages postés 4898 Date d'inscription mardi 4 juillet 2023 Statut Modérateur Dernière intervention 27 mars 2025 - 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
4898
Date d'inscription
mardi 4 juillet 2023
Statut
Modérateur
Dernière intervention
27 mars 2025
330
18 juil. 2024 à 13:15
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.
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.