Page 1 sur 5

Guide pour faire des scripts

Posté : 29 janv. 2016, 00:34
par spitfrog
Une documentation pour comprendre et s'exercer à réaliser les scripts Python pour Paint Shop Pro

Re: Guide pour faire des scripts

Posté : 14 oct. 2016, 19:04
par fs999
Bonjour,

Je cherche un bon éditeur Python sous Windows pour écrire les scripts PaintShop Pro plus facilement.

J'ai trouvé PythonWin mais il me propose de la version Python 2.7 à la 3.5...

J'ai essayé d'installer la verion 2.7 mais il me dit que Python n'est pas installé...

Comment faire ?

Une seconde question :

Quel est l'équivalent du Basic Left, Right, Mid ou du Copy de Delphi ?

Re: Guide pour faire des scripts

Posté : 14 oct. 2016, 22:13
par Zen-Luck
fs999 a écrit :Bonjour,

Je cherche un bon éditeur Python sous Windows pour écrire les scripts PaintShop Pro plus facilement.

J'ai trouvé PythonWin mais il me propose de la version Python 2.7 à la 3.5...

J'ai essayé d'installer la verion 2.7 mais il me dit que Python n'est pas installé...
Je me trompe peut-être mais il me semble que le langage Python intégré à PaintShop Pro est un langage "élagué" c-à-d limité aux seules possibilités d'exécution de PaintShop Pro. Les commandes disponibles ne sont pas aussi nombreuses que dans le langage natif. L'éditeur Notepad++ n'es-il pas suffisant?
Je pense que Cassel pourrait te donner des indications utiles à propos d'un éditeur.

Ici, un tableau créé par Suz Shook à l'époque de PaintShop Pro 8 (Jasc):
Scripting Values Table.pdf
(94.24 Kio) Téléchargé 476 fois

Re: Guide pour faire des scripts

Posté : 16 oct. 2016, 01:05
par fs999
Merci, c'est intéressant... mais ce qu'il me faudrait c'est la base du langage, car je ne la connais pas du tout.
En lisant le manuel de Python, très dur à lire d'ailleurs, j'avais lu que string.lowercase renvoyait le texte en minuscule, mais cette fonction est inconnue...

J'ai quand même réussi à faire mon script de changement de nom, mais ça a été dur.

En plus dans le X3 Script Guide, ils disent que dans PSPUtils il y a GetCurrentLayerName et bien il ne le trouve pas. Pourtant j'ai trouvé la définition dans le fichier PSPUtils.py. Je l'ai recopié dans mon script et là ça marche...

Re: Guide pour faire des scripts

Posté : 16 oct. 2016, 01:52
par spitfrog
Tu es tenace, tu vas finir par devenir un pro du script :super:

Re: Guide pour faire des scripts

Posté : 18 oct. 2016, 19:23
par fs999
Merci !

Juste une question, comment séparer le répertoire du nom du fichier ?

J'ai trouvé ceci pour le nom :
FName = App.ActiveDocument.Name.rsplit('\\', 1)[0]

Par contre pour récupérer tout le répertoire je ne sais pas. En Basic on a LeftOf(txt, srch)...

Re: Guide pour faire des scripts

Posté : 19 oct. 2016, 03:32
par spitfrog
C'est une question pour Carole (Cassel), il faut attendre qu'elle passe par là ;-)
Dans ton ancien message tu y faisais référence aussi.

Re: Guide pour faire des scripts

Posté : 19 oct. 2016, 15:47
par fs999
Non pas tout à fait, là je veux juste récupérer la partie répertoire du document.

Je ne comprend pas pourquoi les gens se compliquent autant la vie avec d'autres langages : Delphi est parfait :D

Edit: Eureka !

Code : Tout sélectionner

    dir = app.ActiveDocument.Name[0:app.ActiveDocument.Name.rfind('\\')+1]
Nomdidiou ! :lol:

Re: Guide pour faire des scripts

Posté : 19 oct. 2016, 16:52
par spitfrog
Le meilleur langage serait d'avoir une IA capable de comprendre le français, imagine la programmation :

Code : Tout sélectionner

Prendre le nom du fichier actuel sans le nom du dossier
Ajouter un nombre à chaque fichier après le traitement en commençant pas 00
Le traitement consiste à réduire l'image de 50% et à ajouter mon logo en bas à droite avec une marge droite de 30 pixels et une marge basse de 20 pixels
Refaire le traitement pour tous les fichiers dans le dossier du fichier actuel
Copier tous les fichiers obtenus dans un sous dossier nommé résultat
En cas d'erreur, stopper et me demander quoi faire 
En cas de réussite copier le dossier résultat dans la clé usb
;-)

Re: Guide pour faire des scripts

Posté : 19 oct. 2016, 17:00
par fs999
C'est pour cela qu'ils ont fait le SQL :lol: