FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Panoramic et ses curiosités
par Klaus Aujourd'hui à 2:20

» Synedit Parameters
par Klaus Aujourd'hui à 1:33

» Utilitaire de suppression de fichiers
par Yannick Hier à 23:03

» Code à vérifier SVP (Oups ! résolu)
par Jean Claude Jeu 22 Juin 2017 - 21:16

» Compilateur FBPano
par jean_debord Jeu 22 Juin 2017 - 9:56

» Bienvenue à Virtualalan !
par UltraVox Jeu 22 Juin 2017 - 9:18

» Concours de Morpions
par jjn4 Jeu 22 Juin 2017 - 0:04

» ShortName$(F) [Cloturé]
par papydall Mer 21 Juin 2017 - 16:19

» Remplacer espace par tiret dans noms des dossiers / fichiers
par papydall Mer 21 Juin 2017 - 15:27

» Menu personalisé avec icones et menu contextuel
par Laurent (Minibug) Mer 21 Juin 2017 - 12:44

» La liste des choses à faire ...
par Jack Mar 20 Juin 2017 - 22:49

» Quoi de neuf à propos de Goric 3D ? (@Jack)
par UltraVox Mar 20 Juin 2017 - 21:06

» Nom court et anti fenetre dos
par silverman Mar 20 Juin 2017 - 18:31

» Ludothèque Panoramic
par jjn4 Mar 20 Juin 2017 - 18:09

» Proposition à la communauté
par Yannick Mar 20 Juin 2017 - 15:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2017
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
2627282930  
CalendrierCalendrier

Partagez | 
 

 Fabriquer un gif animé

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Fabriquer un gif animé   Sam 21 Mar 2015 - 1:59

La dernière animation de papydall m'a donné une idée: faire quelque chose de semblable (en beaucoup moins sophistiqué quand même) avec Panoramic, et à l'aide d'un outil extérieur bien pratique: convert.exe qui est un composant de ImageMagick très puissant et qui permet toutes sortes de fantaisies avec les images.

Le principe est de créer les images élémentaires dans un picture panoramic, de les sauvegarder en bmp, convertir en gif avec convert.exe, puis de les assembler en gif animé, toujours avec convert.

Dans l'exemple ci-dessous je me suis limité à deux images, mais évidemment il n'y a pas de limite.
Il faut donc se procurer ImageMagick (version Windows, free), puis indiquer au programme le chemin de convert.exe. Le travail se fait dans un sous-répertoire GIF de C:\TEMP qui sera créé s'il n'existe pas, et le résultat se trouvera dans ce même répertoire.

Voici (pour le texte je ne me suis pas foulé, mais on peut évidemment mettre tout ce qu'on veut, en taille, couleurs, contenu, etc etc.):
Code:
' Fabrication d'un gif animé
DIM txt$,wt%,ht%,mgh%,mgv%,bd%,cv$,f1$,f2$,fg1$,fg2$,fr$,svr$,r$
txt$ = "VIVE  PANORAMIC !"
mgh% = 30: ' marges horizontales entre texte et bord
mgv% = 20: ' marges verticales entre texte et bord
bd% = 10: ' bordure d'encadrement
cv$ = "C:\PROGRA~1\IMAGEM~1.3-Q\convert.exe": ' chemin de convert de ImageMagick
r$ = "C:\TEMP\GIF\": ' répertoire de travail: créé si inexistant
f1$ = r$+"Img01.bmp"
f2$ = r$+"Img02.bmp"
fg1$ = r$+"Img01.gif"
fg2$ = r$+"Img02.gif"
fr$ = r$+"Anime.gif"

IF DIR_EXISTS(r$)=0 THEN DIR_MAKE r$
IF FILE_EXISTS(r$+"*.gif")<>0 THEN EXECUTE_WAIT "Cmd.exe /c DEL /Q "+r$+"*.gif"
HIDE 0: FORM 10: BORDER_HIDE 10
PICTURE 11: PARENT 11,10
FONT_NAME 11,"Arial Black": FONT_SIZE 11,40: FONT_BOLD 11
wt% = TEXT_WIDTH(txt$,11): ht% = TEXT_HEIGHT(txt$,11)
WIDTH 10,wt%+2*mgh%: HEIGHT 10,ht%+2*mgv%: FULL_SPACE 11
2D_TARGET_IS 11: 2D_PEN_COLOR 180,180,180: 2D_PEN_WIDTH bd%
2D_FILL_COLOR 64,64,64
2D_RECTANGLE bd%/2,bd%/2,WIDTH(11)-bd%/2+1,HEIGHT(11)-bd%/2+1
PRINT_TARGET_IS 11: FONT_COLOR 11,255,64,64: PRINT_LOCATE mgh%,mgv%: PRINT txt$
FILE_SAVE 11,f1$: ' image rouge
FONT_COLOR 11,255,255,64: PRINT_LOCATE mgh%,mgv%: PRINT txt$
FILE_SAVE 11,f2$: ' image jaune
svr$ = DIR_CURRENT$: ' Sauvegarde répertoire courant
DIR_CHANGE r$: ' répertoire des images
EXECUTE_WAIT "Cmd.exe /c "+cv$+" "+f1$+" "+fg1$: ' conversion en gif
EXECUTE_WAIT "Cmd.exe /c "+cv$+" "+f2$+" "+fg2$: ' idem
FILE_DELETE f1$: FILE_DELETE f2$: ' suppression des bmp inutiles
' délai en 100èmes de seconde: 50 = 500 ms
' loop: nombre de bçucles à exécuter (0: infini, boucle sans fin)
EXECUTE_WAIT "Cmd.exe /c "+cv$+" -delay 50 -loop 0 *.gif "+fr$
FILE_DELETE fg1$: FILE_DELETE fg2$: ' suppression des composantes
EXECUTE r$+"Anime.gif": ' Voir le gif animé résultat
DIR_CHANGE svr$: ' Restore répertoire d'origine
TERMINATE
Le programme se termine par l'affichage du résultat
On peut imaginer de mettre ce genre de truc dans des emails pour des anniversaires, ou n'importe quoi d'autre.

21/03 petits ajustements


Dernière édition par JL35 le Sam 21 Mar 2015 - 16:44, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5838
Age : 44
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Fabriquer un gif animé   Sam 21 Mar 2015 - 11:27

Bonne idée JL35.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Fabriquer un gif animé   Sam 21 Mar 2015 - 16:41

Merci Jicehel.
Pour ceux qui seraient intéressés par les différents paramètres de convert.exe (et qui n'ont peur de rien !):
http://www.imagemagick.org/script/convert.php

Et j'ajouterai qu'on peut parfaitement afficher le résultat dans un programme Panoramic (avec Hviewer):
Je redonne le programme complet, avec aperçu du résultat dans une fenêtre Panoramic
Code:
' Fabrication d'un gif animé
DIM txt$,wt%,ht%,mgh%,mgv%,bd%,cv$,f1$,f2$,fg1$,fg2$,fr$,fh$,svr$,r$
txt$ = "VIVE  PANORAMIC !"
mgh% = 30: ' marges horizontales entre texte et bord
mgv% = 20: ' marges verticales entre texte et bord
bd% = 10: ' bordure d'encadrement
cv$ = "C:\PROGRA~1\IMAGEM~1.3-Q\convert.exe": ' chemin de convert de ImageMagick
r$ = "C:\TEMP\GIF": ' répertoire de travail: créé si inexistant
f1$ = r$+"Img01.bmp"
f2$ = r$+"Img02.bmp"
fg1$ = r$+"Img01.gif"
fg2$ = r$+"Img02.gif"
fr$ = r$+"Anime.gif"
fh$ = r$+"Anime.htm"

IF DIR_EXISTS(r$)=0 THEN DIR_MAKE r$
IF FILE_EXISTS(r$+"*.gif")<>0 THEN EXECUTE_WAIT "Cmd.exe /c DEL /Q "+r$+"*.gif"
BORDER_SMALL 0
PICTURE 10: FONT_NAME 10,"Arial Black": FONT_SIZE 10,40: FONT_BOLD 10
wt% = TEXT_WIDTH(txt$,10): ht% = TEXT_HEIGHT(txt$,10)
WIDTH 0,wt%+2*mgh%+50: HEIGHT 0,ht%+2*mgv%+60
WIDTH 10,wt%+2*mgh%: HEIGHT 10,ht%+2*mgv%
2D_TARGET_IS 10: 2D_PEN_COLOR 180,180,180: 2D_PEN_WIDTH bd%
2D_FILL_COLOR 64,64,64
2D_RECTANGLE bd%/2,bd%/2,WIDTH(10)-bd%/2+1,HEIGHT(10)-bd%/2+1
PRINT_TARGET_IS 10: FONT_COLOR 10,255,64,64: PRINT_LOCATE mgh%,mgv%: PRINT txt$
FILE_SAVE 10,f1$: ' image rouge
FONT_COLOR 10,255,255,64: PRINT_LOCATE mgh%,mgv%: PRINT txt$
FILE_SAVE 10,f2$: ' image jaune
svr$ = DIR_CURRENT$: ' Sauvegarde répertoire courant
DIR_CHANGE r$: ' répertoire des images
EXECUTE_WAIT "Cmd.exe /c "+cv$+" "+f1$+" "+fg1$: ' conversion en gif
EXECUTE_WAIT "Cmd.exe /c "+cv$+" "+f2$+" "+fg2$: ' idem
FILE_DELETE f1$: FILE_DELETE f2$: ' suppression des bmp inutiles
' délai en 100èmes de seconde: 50 = 500 ms
' loop: nombre de bçucles à exécuter (0: infini, boucle sans fin)
EXECUTE_WAIT "Cmd.exe /c "+cv$+" -delay 50 -loop 0 *.gif "+fr$
FILE_DELETE fg1$: FILE_DELETE fg2$: ' suppression des composantes
CAPTION 0,"APERÇU  DU  RÉSULTAT :  "+fr$
HVIEWER 12: TOP 12,0: LEFT 12,0: WIDTH 12,WIDTH(10)+30: HEIGHT 12,HEIGHT(10)+20
FILE_OPEN_WRITE 1,fh$
FILE_WRITELN 1,"<HTML>,<HEADER></HEADER><BODY>"
FILE_WRITELN 1,"<IMG SRC="+fr$+">"
FILE_WRITELN 1,"</BODY></HTML>"
FILE_CLOSE 1
FILE_LOAD 12,fh$

END
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Fabriquer un gif animé   

Revenir en haut Aller en bas
 
Fabriquer un gif animé
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Fabriquer un gif animé
» Affichage sous IE des smileys et gif animés
» un son au passage de souris sur une baniere animée (résolu)
» texte animé et roll-over
» Sprite animé pour personnage en marche

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: