.NET 6 : Utiliser Image.FromStream pour charger des images
L'utilisation d'images est un aspect courant dans le développement d'applications .NET. La classe Image
de la bibliothèque System.Drawing permet de manipuler des images de différentes manières, et la méthode FromStream
est particulièrement utile pour charger des images à partir de flux de données.
Charger une image à partir d'un flux
La méthode Image.FromStream
prend un objet Stream
en entrée, qui représente un flux de données contenant l'image. Voici un exemple simple de chargement d'une image à partir d'un fichier :
using System.Drawing;
using System.IO;
// Chemin du fichier image
string imagePath = "image.jpg";
// Ouvrir le flux de fichier
using (FileStream stream = new FileStream(imagePath, FileMode.Open))
{
// Charger l'image à partir du flux
Image image = Image.FromStream(stream);
// Afficher l'image (ou effectuer d'autres opérations)
// ...
}
Dans cet exemple, nous ouvrons un flux de fichier sur l'image "image.jpg". Ensuite, nous utilisons la méthode Image.FromStream
pour charger l'image à partir du flux. L'objet Image
résultant peut ensuite être utilisé pour afficher l'image, la modifier ou la sauvegarder.
Formats d'images supportés
La méthode Image.FromStream
prend en charge une variété de formats d'images, notamment :
- JPEG (.jpg, .jpeg)
- PNG (.png)
- GIF (.gif)
- BMP (.bmp)
- TIFF (.tif, .tiff)
Points importants à noter
- Assurez-vous que le flux de données est positionné au début avant d'appeler
Image.FromStream
. - La méthode
Image.FromStream
ne vérifie pas la validité du flux de données. Si le flux contient des données non valides, une exception sera levée. - La méthode
Image.FromStream
est thread-safe, vous pouvez donc l'utiliser dans plusieurs threads en toute sécurité.
Utiliser Image.FromStream
pour d'autres sources
La méthode Image.FromStream
n'est pas limitée aux fichiers locaux. Vous pouvez l'utiliser pour charger des images à partir d'autres sources, telles que :
- Réseau : Charger des images depuis des serveurs Web en utilisant des flux HTTP.
- Mémoire : Charger des images à partir de tableaux de bytes en mémoire.
- Bases de données : Charger des images stockées dans des bases de données en utilisant des flux de données provenant des lecteurs de base de données.
Conclusion
La méthode Image.FromStream
est un outil puissant pour charger des images à partir de différentes sources dans vos applications .NET. En combinant cette méthode avec les capacités de manipulation d'images de la bibliothèque System.Drawing, vous pouvez facilement créer des applications qui utilisent des images de manière efficace et flexible.