Composant d'animation de GIFs pour Lazarus
Bonjour à tous,
Suite à notre discussion, je vous présente le composant TGIFViewer en version 1.0.
TGIFViewer est un composant visuel pour l'affichage d'animations au format GIF (Graphic Interchange Format) avec Free Pascal et Lazarus.
Compatibilité : Windows, Linux et MacOS
Capacités de TGIFViewer :
- Chargement depuis un stream, un fichier ou une ressource (fonctions LoadFromStream, LoadFromFile, LoadFromResource) ;
- Extraction des images brutes (**fonction DisplayRawFrame) ;
- Extraction des images pré-calculées de l'animation (fonction DisplayFrame ) ;
- Affichage avec ou sans transparence (Transparent) ;
- Gestion silencieuse de certaines données mal encodées pour permette l'affichage des images sans perturber l'utilisateur ;
- Gestion des erreurs pour les fichiers mal compressés (OnLoadError) ;
- Centrage (Center), redimensionnement (Stretch) de l'affichage ;
- Dimension du composant automatique en fonction de l'image (AutoSize) ;
- Evénement à la lecture, l'arrêt ou la mise en pause de l'animation (OnStart, OnPause, OnStop) ;
- Accès aux images et informations du GIF via la propiété Frames.Items[x].
- Traduction des messages interne via les fichiers po du français à l'anglais à l'aide du composant de Gilles Vasseur TGVTranslate légèrement modifié provenant de son tutoriel Comment internationaliser une application avec Free Pascal/Lazarus (voir demonstration gifview. Notez que vous devez copier le dossier languages dans le dossier de sortie de l'executable )
Voici une démonstration avec MacOS :
ℹ️ Contient également deux unités :
- uFastBitmap : classe pour la manipulation de bitmaps 32 bits au format RGBA ou BGRA suivant l'OS ;
- TypesHelpers : classes ajoutant des fonctions utiles au type de données (byte, integer, string, double, TDateTime...) les fonctions sont accessibles directement par la complétion du code sous Lazarus.
- GVTranslate : Classe d'aide pour traduire une application
ℹ️ Vous pouvez télécharger GIF-ImageTestSuite pour tester avec plusieurs GIFs encodés différemment.
Installation :
- Dans Lazarus, allez dans le menu "Paquet" et sélectionnez "Ouvrir un fichier de paquet (".lpk" ;
- Sélectionnez gifviewer_pkg.lpk du dossier Package ;
- Cliquez sur le bouton "Compiler" ;
- Cliquez sur le bouton "Utiliser" puis "Installer".
Le composant TGIFViewer sera installé dans la section Beanz Extra.
Note :
L'application de démonstration GifView du dossier Demos ne nécessite pas l'installation du composant dans l'EDI pour fonctionner.
Licence : MPL
Téléchargement à partir de DVP
Que pensez-vous de ce composant ?
Quels outils graphiques souhaiteriez-vous voir développés avec Lazarus ?