Ich fange mal mit dem umwandeln eines Bildes in Schwarzweiss an: ist eigentlich nicht schwer der code:
der Aufruf könnte z.B. folgender sein:
Ein nachteil dieser Funktion wo ich auch gerade dran bin ist, dass es je nach bildgröße ziemlich lange dauert, bis alle Pixel verarbeitet sind!
Jetzt das auf oder abhellen eines bildes:
Der Aufruf:
Ich werde in zukünftiger Zeit noch versuchen die Schnelligkeit zu optimieren!
VB.NET-Quellcode
- Function colortowhiteblack(ByVal col As Color)
- Dim m As Integer = CInt((CInt(col.R) + CInt(col.G) + CInt(col.B)) / 3)
- Return color.FromArgb(m, m, m)
- End Function
- Function blackwhite(ByVal img As Bitmap)
- Dim imgn As New Bitmap(img.Width, img.Height)
- For x As Integer = 0 To img.Width - 1
- For y As Integer = 0 To img.Height - 1
- imgn.SetPixel(x, y, colortowhiteblack(img.GetPixel(x, y)))
- Next
- Next
- Return imgn
- End Function
der Aufruf könnte z.B. folgender sein:
Ein nachteil dieser Funktion wo ich auch gerade dran bin ist, dass es je nach bildgröße ziemlich lange dauert, bis alle Pixel verarbeitet sind!
Jetzt das auf oder abhellen eines bildes:
VB.NET-Quellcode
- Function dimmcolor(ByVal parameter As Integer, ByVal down As Integer)
- If parameter - down < 0 Then
- parameter = 0
- ElseIf parameter - down > 255 Then
- parameter = 255
- Else
- parameter = parameter - down
- End If
- Return parameter
- End Function
- Function dimm(ByVal img As Bitmap, ByVal variable As Integer)
- Dim imgn As New Bitmap(img.Width, img.Height)
- Try
- For x As Integer = 0 To img.Width - 1
- For y As Integer = 0 To img.Height - 1
- imgn.SetPixel(x, y, Color.FromArgb(dimmcolor(img.GetPixel(x, y).R, variable), dimmcolor(img.GetPixel(x, y).G, variable), dimmcolor(img.GetPixel(x, y).B, variable)))
- Next
- Next
- Catch ex As Exception
- Me.Text = ex.ToString
- End Try
- Return imgn
- End Function
Der Aufruf:
Ich werde in zukünftiger Zeit noch versuchen die Schnelligkeit zu optimieren!