J'ai fait une méthode à CompressImageSize selon la qualité d'image. Le code estComportement étrange de GDI +
public static Image CompressImage(string imagePath, long quality)
{
Image srcImg = LoadImage(imagePath);
//Image srcImg = Image.FromFile(imagePath);
EncoderParameters parameters = new EncoderParameters(1);
parameters.Param[0] = new EncoderParameter(Encoder.Quality, quality);
ImageCodecInfo encoder = GetCodecInfo("image/jpeg");
srcImg.Save("d:\\creatives\\abcd123.jpg", encoder, parameters);
}
public static Image LoadImage(string filename)
{
using (FileStream fs = new FileStream(filename, FileMode.Open))
{
return(Image.FromStream(fs));
}
}
Maintenant, quand je lance ce code tout comme il me donne une « exception GDI générique + », tout en économisant l'srcImg (dernière ligne FunC# 1), mais quand je décommenter la 2ème ligne et chargez l'image en utilisant Image.FromFile tout fonctionne bien.
Pourquoi?