Avatar billede Syska Mester
28. januar 2008 - 20:14 Der er 3 kommentarer og
1 løsning

Resize Bitmap image

Hej,

Hvordan kan jeg lave en resize af mit Bitmap
Følgende laver en skalering, hvilket ikke er acceptabelt.
BitmapFile = new Bitmap(BitmapFile, new Size(BitmapFile.Width + 150, BitmapFile.Height));

Jeg skal kun have x antal pixels mere i den ene retning ...

GetPixel, SetPixel er for langsom ...

Hvad er mine muligheder så ... forhåbeling er der en Method jeg har overset et eller andet sted ...

// ouT
Avatar billede tjacob Juniormester
29. januar 2008 - 12:11 #1
Man skulle tro det kunne gøres direkte, men ellers er der her en workaround:
Du laver et nyt tomt bitmap i den rigtige størrelse, og tegner derefter det gamle på det.

Koden her er i VB.NET -du må selv oversætte til C#:

                Dim NewBMP As Bitmap = New Bitmap(BitmapFile.Width + 150, BitmapFile.Height)
                Dim g As Graphics = Graphics.FromImage(NewBMP)
                g.DrawImage(BitmapFile, 0, 0, BitmapFile.Width, BitmapFile.Height)  'tegner det gamle yderst til venstre
                g.Dispose()
                BitmapFile = New Bitmap(NewBMP)
                NewBMP.Dispose()
Avatar billede Syska Mester
30. januar 2008 - 20:42 #2
Præcis ... det må være hurtigere end det andet ... i hvert fald et super godt bud.

Smid et svar.

// ouT
Avatar billede Syska Mester
30. januar 2008 - 22:21 #3
For dem som synes det er værd at vide ...

.45 sec med Get/Set

.14 med DrawImage

Dette er begge incl database kald og andre ting ... men det siger bare lidt om hvor meget tid den Get/Set tager ... :-)

// ouT
Avatar billede tjacob Juniormester
31. januar 2008 - 09:36 #4
OK -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