Asp.net les images téléchargées sous forme de vignettes
Un petit morceau de code montrant comment accepter un HTTP de téléchargement de fichiers JPG et l'enregistrer avec des dimensions différentes.
//tout d'Abord le code à accepter l'image
private void UploadImageButtonClick(object sender, System.EventArgs e)
{
{
Système.Web.HttpFileCollection allUploadedFiles = Système.Web.HttpContext.Actuel.Demande.Les fichiers
if (allUploadedFiles.Count == 0)
throw new Exception('Pas de fichiers téléchargés')
if (allUploadedFiles.Count > 1)
throw new Exception('Trop grand nombre de fichiers téléchargés')
Système.Web.HttpPostedFile uploadedFile = allUploadedFiles.Get(0)
String fileName = Chemin d'accès.GetFileName(uploadedFile.Nom de fichier)
la Chaîne de fileExt = Chemin d'accès.GetExtension(nom de fichier)
if (fileExt.ToLower() != '.jpg')
throw new Exception('le Fichier n'est pas une image JPG')
la Chaîne de newFileName = Server.MapPath('téléchargé/images') '\\' nom de fichier
if (Fichier.Existe(newFileName))
throw new Exception(nom de fichier 'existe déjà, vous devez le supprimer en premier')
Système.De dessin.Image image = CreateThumbnailImage(uploadedFile)
ImageCodecInfo codeur = FindCodecInfo('JPEG')
EncoderParameters encoderParameters = new EncoderParameters()
encoderParameters.Param[0] = new EncoderParameter(Système d'.De dessin.L'imagerie.Codeur.Qualité, 25L)
image.Enregistrer(newFileName, encodeur, encoderParameters)
}
catch (Exception d'erreur)
{
//Gérer en conséquence
}
}
//Ensuite le code pour trouver l'image codeur
private ImageCodecInfo FindCodecInfo(String description)
{
ImageCodecInfo[] codeurs = Système.De dessin.L'imagerie.ImageCodecInfo.GetImageEncoders()
foreach (ImageCodecInfo codeur dans les codeurs)
if (codeur.FormatDescription == description)
retour codeur
return null
}
//Maintenant le code pour redimensionner enregistrer
Système privé.De dessin.Image CreateThumbnailImage(HttpPostedFile fichier)
{
Système.De dessin.Source de l'Image
Système.De dessin.Résultat d'Image
Double xRatio
Double yRatio
Int32 newWidth
Int32 newHeight
source = Système.De dessin.Image.FromStream(fichier.InputStream)
xRatio = 150.0 / source.La largeur
yRatio = 150.0 / source.Hauteur
if (xRatio < yRatio)
yRatio = xRatio
else
xRatio = yRatio
newWidth = (Int32).Les mathématiques.Tour(la source.Largeur * xRatio)
newHeight = (Int32).Les mathématiques.Sol(source.Hauteur * yRatio)
résultat = source.GetThumbnailImage(newWidth, newHeight, null, IntPtr.Zéro)
return result
}
Asp.net les images telechargees sous forme de vignettes
Asp.net les images telechargees sous forme de vignettes : Plusieurs milliers de conseils pour vous faciliter la vie.
Un petit morceau de code montrant comment accepter un HTTP de telechargement de fichiers JPG et l'enregistrer avec des dimensions differentes.
//tout d'Abord le code a accepter l'image
private void UploadImageButtonClick(object sender, System.EventArgs e)
{
{
Systeme.Web.HttpFileCollection allUploadedFiles = Systeme.Web.HttpContext.Actuel.Demande.Les fichiers
if (allUploadedFiles.Count == 0)
throw new Exception('Pas de fichiers telecharges')
if (allUploadedFiles.Count > 1)
throw new Exception('Trop grand nombre de fichiers telecharges')
Systeme.Web.HttpPostedFile uploadedFile = allUploadedFiles.Get(0)
String fileName = Chemin d'acces.GetFileName(uploadedFile.Nom de fichier)
la Chaîne de fileExt = Chemin d'acces.GetExtension(nom de fichier)
if (fileExt.ToLower() != '.jpg')
throw new Exception('le Fichier n'est pas une image JPG')
la Chaîne de newFileName = Server.MapPath('telecharge/images') '\\' nom de fichier
if (Fichier.Existe(newFileName))
throw new Exception(nom de fichier 'existe deja, vous devez le supprimer en premier')
Systeme.De dessin.Image image = CreateThumbnailImage(uploadedFile)
ImageCodecInfo codeur = FindCodecInfo('JPEG')
EncoderParameters encoderParameters = new EncoderParameters()
encoderParameters.Param[0] = new EncoderParameter(Systeme d'.De dessin.L'imagerie.Codeur.Qualite, 25L)
image.Enregistrer(newFileName, encodeur, encoderParameters)
}
catch (Exception d'erreur)
{
//Gerer en consequence
}
}
//Ensuite le code pour trouver l'image codeur
private ImageCodecInfo FindCodecInfo(String description)
{
ImageCodecInfo[] codeurs = Systeme.De dessin.L'imagerie.ImageCodecInfo.GetImageEncoders()
foreach (ImageCodecInfo codeur dans les codeurs)
if (codeur.FormatDescription == description)
retour codeur
return null
}
//Maintenant le code pour redimensionner enregistrer
Systeme prive.De dessin.Image CreateThumbnailImage(HttpPostedFile fichier)
{
Systeme.De dessin.Source de l'Image
Systeme.De dessin.Resultat d'Image
Double xRatio
Double yRatio
Int32 newWidth
Int32 newHeight
source = Systeme.De dessin.Image.FromStream(fichier.InputStream)
xRatio = 150.0 / source.La largeur
yRatio = 150.0 / source.Hauteur
if (xRatio < yRatio)
yRatio = xRatio
else
xRatio = yRatio
newWidth = (Int32).Les mathematiques.Tour(la source.Largeur * xRatio)
newHeight = (Int32).Les mathematiques.Sol(source.Hauteur * yRatio)
resultat = source.GetThumbnailImage(newWidth, newHeight, null, IntPtr.Zero)
return result
}
Asp.net les images téléchargées sous forme de vignettes
By commentfaire
Asp.net les images téléchargées sous forme de vignettes : Plusieurs milliers de conseils pour vous faciliter la vie.