vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Image/Bitmap verändert sich ohne Änderungen durch den Code ???  
Autor: Jojo
Datum: 25.04.18 08:08

Hallo,

ich habe eine relativ komplexe funktion, die mir Bilder umwandelt. Dazu werden große Bilder geladen und in verschidene andere Formate umgewandelt und abgespeichert. Im Rahmen einer Optimierung wurde der Code geändert und ich lese die Bilder jetzt aus MemoryStream statt dem umweg über die lokale Platte. Soweit so gut. Komischerweise verändert sich das Bild - ohne dass die Variable im Code verwendet wird.

Hier mal der Code:
Es wird ein Bild von einer URL geladen in StreamBild. Dann werden zwei funktionen aufgerufen, die jeweils ein Bild 120 und 600 erstellen sollen.

Dim StreamBild As Image = Nothing
Dim wc As New Net.WebClient()
Using stream As New IO.MemoryStream(wc.DownloadData(DR("SourceUrl").ToString))
   StreamBild = Image.FromStream(stream)
End Using
 
If StreamBild IsNot Nothing Then
      Using myimage As Bitmap = StreamBild
      'Bild 120
      imageConvert(myimage, 120, 120, Imaging.ImageFormat.Jpeg, Dateiname, _
        False, False, 120, 120)
      'Bild600
      ImageConvert(myimage, 300, 300, Imaging.ImageFormat.Jpeg, Dateiname600, _
        False, False, 300, 300)
   End Using
End If
Das Komische ist, dass die erste ImageConvert das Bild in 120x120 erstellt. Beim Aufruf des Bild600 ist myimage nothing

Public Sub imageConvert(ByVal ConvertBild As Bitmap, ByVal nWidth As Integer, _
  ByVal nHeight As Integer, ByVal nFormat As ImageFormat, ByVal sNewFile As _
  String, Optional ByVal CropImage As Boolean = False, Optional ByVal _
  RotateImage As Boolean = True, Optional ByVal fixWidth As Integer = 0, _
  Optional ByVal fixHeight As Integer = 0)
 
   ' Neues Bild-Objekt in der neu berechneten Breite und Höhe erstellen
   Using neuesBild As Bitmap = ConvertBild
 
      '---- Bild auf die Festgelegte Höhe und Breite bringen ----
      If System.IO.File.Exists(sNewFile) Then System.IO.File.Delete(sNewFile)
 
      Dim NewPosY As Integer = 0, NewPosX As Integer = 0
      If fixHeight > neuesBild.Height Then NewPosY = CInt((fixHeight - _
        neuesBild.Height) / 2)
      If fixWidth > neuesBild.Width Then NewPosX = CInt((fixWidth - _
      neuesBild.Width) / 2)
      Using fixBmp As Bitmap = New Bitmap(fixWidth, fixHeight, _
      PixelFormat.Format32bppArgb)
         Using g As Drawing.Graphics = Graphics.FromImage(fixBmp)
            g.Clear(Color.White)
            g.SmoothingMode = SmoothingMode.HighQuality
            g.CompositingQuality = CompositingQuality.HighQuality
            g.InterpolationMode = InterpolationMode.High
            g.DrawImage(neuesBild, New RectangleF(NewPosX, NewPosY, _
              neuesBild.Width, neuesBild.Height), New RectangleF(0, 0, _
              neuesBild.Width, neuesBild.Height), GraphicsUnit.Pixel)
            fixBmp.Save(sNewFile, nFormat)
         End Using
      End Using
   End Using
End Sub
Die Funktion imageConvert (war eine Funtion, habe ich jetzt in eine Sub umgewandelt zum test) verändert die Ursprungsvariable nicht. Dennoch ist nach dem Ausführen der Sub die Ursprüngliche Variable nothing

Wer kann mir erklären, was hier passiert?

Joachim

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Image/Bitmap verändert sich ohne Änderungen durch den Code ?...1.081Jojo25.04.18 08:08
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...541Manfred X25.04.18 08:59
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...505Jojo25.04.18 09:35
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...562Jojo25.04.18 09:50
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...529Manfred X25.04.18 10:08
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...651Jojo25.04.18 10:22
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...522Manfred X25.04.18 11:09
Re: Image/Bitmap verändert sich ohne Änderungen durch den Co...515Jojo25.04.18 12:05

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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