Avatar billede bubbaa Nybegynder
28. august 2008 - 09:24 Der er 2 kommentarer og
1 løsning

Resize af billede kommer til at fylde for meget

Jeg prøver at resize mine billeder, så de ikke fylder så meget.
Problemet ligger i at de kommer til at fylde mere end originalen, selvom at der er færre pixels på det nye. Hvad er det lige jeg laver forkert?

string dir = Server.MapPath(directoryPath + "\\Mediumsize\\");
string src = Path.Combine(directoryPath, filename);
string dest = Path.Combine(directoryPath + "\\Mediumsize\\", filename);

System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(src));
int srcWidth = image.Width;
int srcHeight = image.Height;

Graphics g = Graphics.FromImage(image);
Decimal sizeRatio = ((Decimal)srcHeight / srcWidth);
int Width = 640;
int Height = Decimal.ToInt32(sizeRatio * Width);
System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(Width, Height);

System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(bmp);
gr.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
gr.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;

System.Drawing.Rectangle rectDestination = new System.Drawing.Rectangle(0, 0, Width, Height);

gr.DrawImage(image, rectDestination, 0, 0, srcWidth, srcHeight, System.Drawing.GraphicsUnit.Pixel);

string destination = Server.MapPath(dest);
bmp.Save(destination);
bmp.Dispose();
image.Dispose();
Avatar billede aaberg Nybegynder
28. august 2008 - 09:44 #1
Når du ikke specificere hvilket format du vil gemme billedet i, bliver det gemt som et PNG billede. PNG fylder mere end JPG, så hvis det originale billede er i JPG format, kan dette være grunden.

Prøv at udskifte følgende:
bmp.Save(destination);

med;
bmp.Save(destination, System.Drawing.Imaging.ImageFormat.Jpeg);
Avatar billede bubbaa Nybegynder
28. august 2008 - 10:27 #2
Takker, havde prøvet det, men fik en exception. Men den må jo så have kommet af noget andet :)

Smider du et svar?
Avatar billede aaberg Nybegynder
28. august 2008 - 10:33 #3
svar :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester