Plusieurs solutions permettaient d'afficher des images vectorielles pour les projets VCL et FireMonkey en Delphi mais l'arrivée de la librairie Skia4Delphi a grandement simplifié les choses. On peut maintenant utiliser des images vectorielles "nativement" dans nos projets.
A l'occasion de la création du jeu vidéo Sporgloo et de l'utilisation de SVG à la place de bitmaps pour les sprites nous avons eu besoin d'embarquer de nombreux fichiers dans un projet. La solution de liste d'images SVG proposée par Ethea ne correspondait pas à notre besoin. Il s'est avéré plus facile de le faire sous forme de code source que de gérer le déploiement d'une multitude de fichiers autour de notre exécutable. C'est ainsi qu'est né le projet SVGFolder2DelphiUnit.
SVG Folder to Delphi Unit liste les fichiers SVG du dossier fourni et crée un tableau de chaines de caractères multilignes dans une unité Delphi à partir de leurs codes sources. Une liste de constantes et une classe sont ajoutées pour en simplifier l'accès selon vos habitudes de programmation.
Pour utiliser le tout dans les projets VCL ou FireMonkey on peut soit utiliser le composant TSkSVG qui affiche un SVG à l'écran soit l'unité Olf.Skia.SVGToBitmap.pas de cette boite à outils open source pour générer un bitmap de la bonne taille et résolution à utiliser comme n'importe quel TBitmap. Vous pouvez aussi utiliser n'importe quel autre composant ou librairie permettant l'interprétation et l'affichage de SVG en Pascal pour Delphi.
La version exécutable de SVGFolder2DelphiUnit est disponible en shareware. Vous pouvez la télécharger et diffuser librement (sans l'altérer). Vous pouvez aussi en acheter une licence s'il convient à vos besoins.
Pour en savoir plus rendez-vous sur le site de SVGFolder2DelphiUnit.