Antwort
Nun, was wollen Sie können dies sein:
// 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;
}
Dann können Sie dies tun:
// First load the image somehow
Image myImage = Image.FromFile(pathToImage, true);
// Save the image with a quality of 50%
SaveJpeg (destImagePath, myImage, 50);
Siehe this post on VB Forums und this blog post.
Das ist eine perfekte Lösung, reduziert meine Bildgröße von 5.5MB auf 1.7MB mit 70% Qualität. –
Nun, Bilder kleiner werden nicht auf magische Weise zu reduzieren, so dass entweder Sie es zu komprimieren haben oder verkleinere es.
Ja kann es. Durch die Magie von C#! Reduzieren Sie die Qualität bei gleichbleibendem Maßstab. Keine Komprimierung erforderlich. – hofnarwillie
Bitte sehen Sie sich dieses Beispiel. Verwenden Sie GDI +, um die Größe des Fotos zu ändern. Ich wünschte, es könnte dir helfen.
- 1. Bildgröße in C reduzieren #
- 2. Bildgröße auf Objective-c,
- 3. bison: Wie löst man das Varname & Varname reduce/reduce Problem?
- 4. C#, warum Größe Bildgröße wird die Dateigröße
- 5. Komprimiere animierte Gif Bildgröße mit C#
- 6. iOS - Reduce GPUImage RAM-Auslastung
- 7. Javascript reduce() auf Objekt
- 8. CSS/JS Bildgröße anpassen, um Bildgröße anzupassen
- 9. Bildgröße (Java)
- 10. MooFlow Bildgröße
- 11. jquery Bildgröße
- 12. Phalcon Bildgröße
- 13. Kontrolle Bildgröße
- 14. UITabBarItem Bildgröße
- 15. Verstehen Sie die Reduce-Funktion
- 16. Bildgröße (Python, OpenCV)
- 17. Was ist der Reduce-Parameter in CouchDBs Reduce-Funktion?
- 18. Reduce rezept echo in machen
- 19. Map Reduce mit Multiprozessing
- 20. RxJS reduce nicht fortgesetzt
- 21. Array forEach() vs reduce()
- 22. Hat Mongoid Map/Reduce?
- 23. Eingabedateiformat für map-reduce
- 24. F #: Reduce diese Funktion
- 25. Reduce Array Information
- 26. Map Reduce Frameworks/Infrastructure
- 27. openmp reduce technique
- 28. Underscore _.reduce Klärung?
- 29. Hadoop Map Reduce: Algorithmen
- 30. Override die Reduce-Methode
siehe http://stackoverflow.com/questions/2933918/reduce-bild-size-in-bytes-without-resize-and-quality-lose-in-c – Pratik