Tengo la imagen de un código QR en formato JPG y de 2450x2450px.
Dicha imagen se genera automáticamente usando al librería QRCoder de C#.
Una vez generada dicha imagen, necesito resimensionarla a un tañaño de 126x126px. Para esta acción uso el siguiente código:
Código:
Pero la imagen resultante queda a muy mala calidad y el código QR no se puede leer.Bitmap newImage = new Bitmap(126, 126, PixelFormat.Format24bppRgb); // Draws the image in the specified size with quality mode set to HighQuality using (Graphics graphics = Graphics.FromImage(newImage)) { graphics.CompositingQuality = CompositingQuality.HighQuality; graphics.InterpolationMode = InterpolationMode.HighQualityBicubic; graphics.SmoothingMode = SmoothingMode.HighQuality; graphics.DrawImage(new Bitmap(imageSourcePath), 0, 0, 126, 126); } // Get an ImageCodecInfo object that represents the JPEG codec. ImageCodecInfo imageCodecInfo = GetEncoderInfo(ImageFormat.Jpeg); // Create an Encoder object for the Quality parameter. System.Drawing.Imaging.Encoder encoder = System.Drawing.Imaging.Encoder.Quality; // Create an EncoderParameters object. EncoderParameters encoderParameters = new EncoderParameters(1); // Save the image as a JPEG file with quality level. EncoderParameter encoderParameter = new EncoderParameter(encoder, 100L); encoderParameters.Param[0] = encoderParameter;
Hay alguna manera de mejorar/obtener una imagen reducida más correcta?
Muchas gracias