Mi escenario:Reducir el tamaño de la imagen C#
quiero esperar reducir el tamaño de la imagen (10 KB a 3 KB)
Mi escenario:Reducir el tamaño de la imagen C#
quiero esperar reducir el tamaño de la imagen (10 KB a 3 KB)
Bueno, lo que quiere puede ser la siguiente:
// Make sure to include this at the top
using System.Drawing.Imaging;
/// <summary>
/// Saves an image as a jpeg image, with the given quality
/// </summary>
/// <param name="path"> Path to which the image would be saved. </param>
/// <param name="quality"> An integer from 0 to 100, with 100 being the highest quality. </param>
public static void SaveJpeg (string path, Image img, int quality)
{
if (quality<0 || quality>100)
throw new ArgumentOutOfRangeException("quality must be between 0 and 100.");
// Encoder parameter for image quality
EncoderParameter qualityParam = new EncoderParameter(Encoder.Quality, quality);
// JPEG image codec
ImageCodecInfo jpegCodec = GetEncoderInfo("image/jpeg");
EncoderParameters encoderParams = new EncoderParameters(1);
encoderParams.Param[0] = qualityParam;
img.Save(path, jpegCodec, encoderParams);
}
/// <summary>
/// Returns the image codec with the given mime type
/// </summary>
private static ImageCodecInfo GetEncoderInfo(string mimeType)
{
// Get image codecs for all image formats
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();
// Find the correct image codec
for(int i=0; i<codecs.Length; i++)
if(codecs[i].MimeType == mimeType)
return codecs[i];
return null;
}
entonces usted puede hacer esto:
// First load the image somehow
Image myImage = Image.FromFile(pathToImage, true);
// Save the image with a quality of 50%
SaveJpeg (destImagePath, myImage, 50);
Consulte this post on VB Forums y this blog post.
Esa es una solución perfecta, redujo el tamaño de mi imagen de 5.5MB a 1.7MB con un 70% de calidad. –
Bueno, las imágenes pueden no mágicamente vuelto más pequeño, por lo que o bien tienen que comprimirlo o reducirlo
Sí, puede. ¡Por la magia de C#! Reduzca la calidad mientras mantiene la escala. No se necesita compresión – hofnarwillie
favor, mire esta muestra. Use GDI + para cambiar el tamaño de la foto. Ojalá pueda ayudarte.
eche un vistazo a http://stackoverflow.com/questions/2933918/reduce-image-size-in-bytes-without-resize-and-quality-lose-in-c – Pratik