[ASTUCE] Photoshop & Flash

Tous les tutos concernant les logiciels d'édition d'image, vidéo et HyperTheme.

Modérateurs : Nabubokon, Porko, Thesalan, Modérateurs

Répondre
Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

[ASTUCE] Photoshop & Flash

Message par BenjaminLSR » 07 mai 2014 - 10:35

LA BOITE À OUTILS


1ER OUTIL: Macro photoshop

Cette macro au format javascript vous permet de générer des images photoshop par lots.
- Vous ouvrez votre psd.
- Vous disposez vos calques et objets comme d'habitude.
- Vous modifiez le code en fonction (aidez vous des commentaires).
- Vous disposez le script dans le même dossier que votre psd.
- Vous allez Fichier / Script / Parcourir.
- Vous sélectionnez le script.
- Vous attendez le message de confirmation :)

EXEMPLE: Obtenu après lecture du fichier Main Menu.xml
Image

// DES VARIABLES
var Path = app.activeDocument.path;
var AD = app.activeDocument;

// VARIABLE NOM DU DOCUMENT
// Utilisée pour déposer les fichiers générés dans le dossier du même nom
var ADname = AD.name.replace(".psd","");

// FONCTION CHANGETEXTBYLAYERNAME
// Utilisée pour remplacer le text du layer par le texte de votre choix
function changeTextByLayerName(layerName,newText){
   var layer = AD.layers.getByName(layerName);
   if(layer.kind == LayerKind.TEXT)
      layer.textItem.contents = newText;
}

// FONCTION CAPTEXT
// Utilisée pour limiter (ou non) la longueur d'une variable en la tronquant.
// On remplace les trois derniers caractères par ...
function capText(oldText,limit){
   var newText = "" + oldText;
   var newTextLength = newText.length;
   
   if(newTextLength limit)
      newText = newText.substr(newText,limit) + "...";
   
   return newText;
}

// CHANGEMENT DU NOM DU FICHIER XML
var monFICHIER = "MAME.xml";

var myXMLFile = new File(Path + "/" + monFICHIER);
myXMLFile.open('r');
var myXMLString = myXMLFile.read();
myXMLFile.close();

var myXml = new XML( myXMLString );
var mesJeux = myXml.descendants("game");

var count = mesJeux.length();

// C'EST ICI QUE CA CE PASSE !
for(var i=0;icount;i++){
   var game = {};
   
   // VOS VARIABLES DU JEU
   game.name = mesJeux.child(i).@name;
   game.index = mesJeux.child(i).@index;
   game.image = mesJeux.child(i).@image;
   game.desc = mesJeux.child(i)["description"];
   game.manu = mesJeux.child(i)["manufacturer"];
   game.year = mesJeux.child(i)["year"];
   game.genre = mesJeux.child(i)["genre"];
   game.rate = mesJeux.child(i)["rating"];

   // VOTRE CALQUE
   var monCALQUE = "Console2";
   changeTextByLayerName(monCALQUE,game.desc);
   
   // ON SAUVEGARDE LE FICHIER
   // dossier du psd / nom du psd / nom du jeu.png
   var saveFile = File(Path + "/" + ADname + "/" + game.name + ".png");
   pngSaveOptions = new PNGSaveOptions();
   AD.saveAs(saveFile, pngSaveOptions, true,Extension.LOWERCASE);   
}
alert("Bonne journée sur Hyperfreespin !");
Image

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 07 mai 2014 - 14:39

Merci, Benjamin.

Je vais regarder ce soir, par contre j'ai pas tout compris sur la forme du PSD et ce qu'il faut modifier dans le script.

Sorry, je suis une bille en codage

Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 07 mai 2014 - 14:56

Tu peux prendre le PSD que tu veux.

Tu modifie le nom du fichier XML.
// CHANGEMENT DU NOM DU FICHIER XML
var monFICHIER = "MAME.xml";
Tu modifie le nom du calque qui contient ton texte.
// VOTRE CALQUE
   var monCALQUE = "Console2";
J'ai déjà isolé les variables d'un fichier XML standard.
  // VOS VARIABLES DU JEU
  game.name = mesJeux.child(i).@name;
  game.index = mesJeux.child(i).@index;
  game.image = mesJeux.child(i).@image;
  game.desc = mesJeux.child(i)["description"];
  game.manu = mesJeux.child(i)["manufacturer"];
  game.year = mesJeux.child(i)["year"];
  game.genre = mesJeux.child(i)["genre"];
  game.rate = mesJeux.child(i)["rating"];

Avatar de l’utilisateur
slana54
Habitué
Habitué
Messages : 81
Inscription : 06 mars 2013 - 00:00
Localisation : 54840 - GONDREVILLE
A remercié : 23 fois
A été remercié : 1 fois

[BOITE À OUTILS] Photoshop & Flash

Message par slana54 » 07 mai 2014 - 14:59

Bonjour,

Un petit tuto pour expliquer comment ça marche serais bien non. Parce que moi je comprends pas.

Merci.

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 07 mai 2014 - 17:16

Je viens de test, mais j'ai un peut de mal.

Il faut créer un calque de type texte, sinon ça fait une erreur.

Ensuite ça fait à peut prêt le job mais à la fin j'ai ce message

Image

J'ai virer ce qu'il y avait dans le script entre parenthèse de cette ligne:
AD.saveAs(saveFile, pngSaveOptions, true,Extension.LOWERCASE);

Après cette suppression ça fait le job en boucle jusqu'au dernier jeux du XML mais aucun fichier généré. Je m'apperçoit aussi que le script ne prend que la description et pas le reste.

Surement à cause de ça:

// VOTRE CALQUE
var monCALQUE = "Calque1";
changeTextByLayerName(monCALQUE,game.desc);

Ne faut il pas plus de ligne de ce type en remplaçant game.desc par game.manu,
game.year, game.genre, game.rate ?


Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 07 mai 2014 - 17:33

Pour ta première erreur, as tu bien crée un dossier du même nom que le psd ?
exemple ./Artwork1/ pour artwork1.js, artwork1.psd

ensuite...

Ne faut il pas plus de ligne de ce type en remplaçant game.desc par game.manu,
game.year, game.genre, game.rate ?Tu dois mettre autant de ligne que d'informations à récuperer dans le xml.

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 07 mai 2014 - 17:47

Non ça ne change rien, je suis sous Photoshop CS6 Extend, peut être ça qui va pas

Avatar de l’utilisateur
slana54
Habitué
Habitué
Messages : 81
Inscription : 06 mars 2013 - 00:00
Localisation : 54840 - GONDREVILLE
A remercié : 23 fois
A été remercié : 1 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par slana54 » 07 mai 2014 - 18:49

Non ça ne change rien, je suis sous Photoshop CS6 Extend, peut être ça qui va pas
Je pense qu'un petit tuto serais le bien venu.

Merci

Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 07 mai 2014 - 19:06

Plus tard dans la soirée.

Kam3léoN

Re: [BOITE À OUTILS] Photoshop & Flash

Message par Kam3léoN » 07 mai 2014 - 21:55

Up ! pour un petit tuto
Et surtout pour expliqué l'intérêt de cet outil, parce-que moi perso qui utilise beaucoup Photoshop, j'ai pas compris l'intérêt surtout des scripts qui peuvent être gérer direct via Photoshop, petite précision, je suis sous la dernière version à savoir la CC (creative cloud)

La ou je pêche c'est le javascript en complément mais je suis sûr que tu vas réussir à m'éclairer avec un petit tuto. ^^
Dans tout les cas, je suis preneur si cela permets de gagner du temps.

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 07 mai 2014 - 22:34

Les scripts servent à faire des taches répétitive, quand tu as beaucoup d'image à faire c'est très intéressant car tu gagnes beaucoup de temps et tu évite les erreurs.

Pour mes Wheels j'utilise un script par exemple

Kam3léoN

Re: [BOITE À OUTILS] Photoshop & Flash

Message par Kam3léoN » 07 mai 2014 - 22:42

Les scripts servent à faire des taches répétitive, quand tu as beaucoup d'image à faire c'est très intéressant car tu gagnes beaucoup de temps et tu évite les erreurs.

Pour mes Wheels j'utilise un script par exemple
Oui ca ok sticky, mais tu le fais avec photoshop et là j'ai l'impression qu'il parle d'un logiciel externe à photoshop ! ^^ j'ai du mal comprendre.
Parce que via photoshop tu n'as besoin d'aucune ligne de code... comme tu le dit c'est la répétition d'une tache répétitive...
tu enregistre une manip avec photoshop qui génère un script et il recopie cette tache dans un dossier indéfiniment sur toute les images présente à l'intérieur.
je l'utilise très souvent également c'est la fonction automatisation traitement par lots ... donc pas besoin de logiciel externe...
c'est moi ou je suis un gros noob... avec toshop !^^

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 07 mai 2014 - 23:40

La c'est pareil mais comme il fait des choses beaucoup plus complexe, il passe par un fichier java et c'est lui même qui écrit le code.

La fonction script que tu utilise et moi aussi d'ailleurs (je suis pas aller aussi loin car j'en avait pas l'utilité avant) c'est photoshop qui écrit direct ces fichiers que l'on ne voit pas, photoshop facilite grandement la création de ces scripts, mais si tu fouilles dans ton répertoire photoshop tu les trouveras.

Kam3léoN

Re: [BOITE À OUTILS] Photoshop & Flash

Message par Kam3léoN » 07 mai 2014 - 23:44

La c'est pareil mais comme il fait des choses beaucoup plus complexe, il passe par un fichier java et c'est lui même qui écrit le code.

La fonction script que tu utilise et moi aussi d'ailleurs (je suis pas aller aussi loin car j'en avait pas l'utilité avant) c'est photoshop qui écrit direct ces fichiers que l'on ne voit pas, photoshop facilite grandement la création de ces scripts, mais si tu fouilles dans ton répertoire photoshop tu les trouveras.
A ok ! la c'est plus clair !
C'est donc la même chose en mode : j'aime bien mettre les mains dans le cambouis. ^^

Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 08 mai 2014 - 08:25

Si tu arrive deja à traiter des fichiers externes type xml depuis photoshop alors ce script ne te servira à rien.
Je vais tacher de faire une démo et je mettrais le premier post à jours.

Vous devriez avoir quelque chose comme ça. (le script sur l'image est un peu différent pour mes besoins)
Image

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 08 mai 2014 - 13:17

:cheers:  

C'est bon ça fonctionne, il me manqué juste le dossier du même nom que le script placé au même niveau. J'avais compris qu'il fallait nommer le dossier parent de la même façon.

Avec ton screenshot j'ai compris.

Un grand merci à toi ça fonctionne du tonner.

Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 08 mai 2014 - 13:48

:cheers:  

C'est bon ça fonctionne, il me manqué juste le dossier du même nom que le script placé au même niveau. J'avais compris qu'il fallait nommer le dossier parent de la même façon.

Avec ton screenshot j'ai compris.

Un grand merci à toi ça fonctionne du tonner.
Hesite pas à montrer ton travail avec :)

Avatar de l’utilisateur
stickcross
Passionné
Passionné
Messages : 168
Inscription : 22 janv. 2013 - 00:00
Localisation : Campsas
A remercié : 1 fois
A été remercié : 68 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par stickcross » 08 mai 2014 - 16:49

Voila ce que ça donnes   8)  



Benjamin tu tombe à pique et encore merci pour ce script car il me fait gagner énormément de temps.


Avatar de l’utilisateur
BenjaminLSR
Connaisseur
Connaisseur
Messages : 223
Inscription : 16 nov. 2013 - 00:00
A été remercié : 2 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par BenjaminLSR » 08 mai 2014 - 16:53

Ah c'est pas mal du tout :)

Avatar de l’utilisateur
DarkEagle37
Maître
Maître
Messages : 3318
Inscription : 07 mars 2013 - 00:00
Localisation : Tours (37)
A remercié : 78 fois
A été remercié : 112 fois

Re: [BOITE À OUTILS] Photoshop & Flash

Message par DarkEagle37 » 08 mai 2014 - 17:21

Ça péte pas mal :D

Répondre

Revenir à « Tutos Graphisme et Edition »