Hej, jag har en funktion för att förminska/beskära bilder som man laddar upp. Men när jag sparar dem så blir kvaliteten under all kritik för att använda på en hemsida. Tycker jag har kollat på det mesta som har med kvaliteten att göra men det blir ändå inte bra. Några tips på vilka saker man ska ändra/göra för att få bra kvalitet på bilden. Testade att köra med png format på bilderna men då blev dom för stora utan vill helst hålla mig till .jpg. När du hanterar jpeg kan du ange kvalitéen. Dock på olika sätt, det bästa sättet är lite klurigt, då enligt de exeplem och den kod jag kom fram till måste gå genom contentypen m.m. Såhär har jag gjort:Kvalitet på bilder
//Edward JewsonSv: Kvalitet på bilder
Fast får du verkligen så dåliga Jpeg filer? De jag bygger blir rätt bra. DÅ genom att använda standard inställningarna i GDI+
Mvh JohanSv: Kvalitet på bilder
<code>Encoder qualityEncoder = Encoder.Quality;
EncoderParameter ratio = new EncoderParameter(qualityEncoder, 40L);
EncoderParameters codecParams = new EncoderParameters(1);
codecParams.Param[0] = ratio;
if(destination.EndsWith(".jpg") || destination.EndsWith(".JPG") || destination.EndsWith(".jpeg"))
bit.Save(destination, GetEncoderInfo("image/jpeg"),codecParams);
private static ImageCodecInfo GetEncoderInfo(String mimeType)
{
int j;
ImageCodecInfo[] encoders;
encoders = ImageCodecInfo.GetImageEncoders();
for(j = 0; j < encoders.Length; ++j)
{
if(encoders[j].MimeType == mimeType)
return encoders[j];
} return null;
}
</code>
Där du har qualityEncoder, 40L); ställer du in ett värde mellan 1 och 100 för att bestämma kvalitet. Satt själv och sökte mig galen efter denna lösning :)
mvh
Anders