| |
VB.NET - FortgeschritteneRe: PictureBox save | | | Autor: GPM | Datum: 06.03.07 11:14 |
| Das liegt wohl an deiner etwas älteren Net-Version. Da gab es Using halt noch nicht
Dim bmp As Bitmap = New Bitmap(PicBox.Width, PicBox.Height)
Dim g As Graphics = Graphics.FromImage(bmp)
g.Clear(PicBox.BackColor)
g.DrawImage(PicBox.Image, 0, 0)
bmp.Save("TestBild1.bmp")
g.Dispose()
bmp.Dispose() MfG GPM | |
PictureBox save | | | Autor: Morpheus852 | Datum: 05.03.07 13:00 |
| Hallo Leute,
ich hab folgendes Problem,
ich lade in eine PictureBox ein image, dabei wird die PictureBox nicht vollständig mit dem Bild aufgefüllt. Nun möchte ich den ganzen PictureBox Inhalt speichern, das heisst Hintergrundfarbe plus PictureBox.Image, ich habe bisher nur das Image speichern können.
gruss Morph | |
Re: PictureBox save | | | Autor: GPM | Datum: 05.03.07 15:46 |
| Using bmp As Bitmap = New Bitmap(PicBox.Width, PicBox.Height), g As Graphics = _
Graphics.FromImage(bmp)
g.Clear(PicBox.BackColor)
g.DrawImage(PicBox.Image, 0, 0)
bmp.Save("TestBild.bmp")
End Using MfG GPM | |
Re: PictureBox save | | | Autor: Morpheus852 | Datum: 06.03.07 10:44 |
| Danke dir, habe gestern noch in einem alten Archiv das hier gefunden:
Dim skalierung As Double
Dim pngUserAvatarOriginal = ImageFromWeb(LoadPath)
skalierung = pngUserAvatarOriginal.width / 133
If (pngUserAvatarOriginal.Height / skalierung) > 133 Then
skalierung = pngUserAvatarOriginal.Height / 133
End If
'neue Breite des Bildes
Dim NewWidth As Integer = pngUserAvatarOriginal.Width / skalierung
'Neue Höhe des Bildes
Dim NewHeight As Integer = pngUserAvatarOriginal.Height / skalierung
'Position des Bilder auf dem Hintergrund, nach Berechung immer mittig
' positionieren
Dim newLeft As Integer = (133 - NewWidth) / 2
Dim NewTop As Integer = (133 - NewHeight) / 2
'Hintergrund des Bildes
Dim pngUserAvatarVoralge = New System.Drawing.Bitmap(133, 133, _
System.Drawing.Imaging.PixelFormat.Format24bppRgb)
Dim ResizeGraphics = System.Drawing.Graphics.FromImage( _
pngUserAvatarVoralge)
ResizeGraphics.CompositingMode = _
Drawing.Drawing2D.CompositingMode.SourceOver
ResizeGraphics.CompositingQuality = _
Drawing.Drawing2D.CompositingQuality.HighQuality
ResizeGraphics.InterpolationMode = _
Drawing.Drawing2D.InterpolationMode.High
ResizeGraphics.SmoothingMode = _
Drawing.Drawing2D.SmoothingMode.HighQuality
ResizeGraphics.TextRenderingHint = _
Drawing.Text.TextRenderingHint.AntiAlias
ResizeGraphics.Clear(System.Drawing.Color.White)
ResizeGraphics.DrawImage(pngUserAvatarOriginal, newLeft, NewTop, _
NewWidth, NewHeight)
pngUserAvatarOriginal.Dispose()
'Das komplette Bild speichern
pngUserAvatarVoralge.Save(SavePath)
pngUserAvatarVoralge.Dispose() Das war genau das was ich gesucht habe. Deinen Code wollte ich auch noch kurz testen, allerdings war der Code nicht einwandfrei. Der Compiler kannte Using nicht, hast du mir vielleicht einen Verweis auf ein Beispiel zu Using oder so? | |
Re: PictureBox save | | | Autor: Drapondur | Datum: 06.03.07 12:14 |
| Using sieht übersetzt nach 1.1 eigentlich so aus (und so sollte man's auch machen, um auch nach einem Fehler Disposen zu können):Dim bmp As Bitmap = New Bitmap(PicBox.Width, PicBox.Height)
Try
Dim g As Graphics = Graphics.FromImage(bmp)
Try
g.Clear(PicBox.BackColor)
g.DrawImage(PicBox.Image, 0, 0)
bmp.Save("TestBild1.bmp")
Finally
g.Dispose()
End Try
Finally
bmp.Dispose()
End Try Es grüßt der Besserwisser
D. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|