Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1550 | Anzahl registrierter User: 1841 | Besucher online: 29
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Bild in Graustufen umwandeln


Autor: Tim Hartwig
Sprache: VB.NET
Bewertung:
8.2 (6 votes)
Anzahl der Aufrufe: 8606
  
Kick it on dotnet-kicks.de  

Beschreibung:

Diese Funktion macht aus einem Bild mithilfe einer neuen ColorMatrix ein Schwarz/Weißes Bild (Graustufen) und gibt dieses als neue Kopie zurück

Abgelegt unter: Graustufen, Bild.



Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Public Function GrayScale(ByVal Image As Image) As Image
    Dim ImgAttr As New Imaging.ImageAttributes()

    'Standard-ColorMatrix für Graustufen
    Dim ColorMatrix As New Imaging.ColorMatrix(New Single()() {New Single() {0.299, 0.299, 0.299, 0, 0}, New Single() {0.587, 0.587, 0.587, 0, 0}, New Single() {0.114, 0.114, 0.114, 0, 0},New Single() {0, 0, 0, 1, 0}, New Single() {0, 0, 0, 0, 1}})

    'ColorMatrix an ImageAttribute-Objekt übergeben
    ImgAttr.SetColorMatrix(ColorMatrix)

    'Neue 32bit Bitmap erstellen
    Dim NewBitmap = New Bitmap(Image.Width, Image.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb)

    'Resolution (DPI) vom Quellbitmap auf Zielbitmap übertragen
    NewBitmap.SetResolution(Image.HorizontalResolution, Image.VerticalResolution)

    'Graphicsobjekt von NewBitmap erstellen
    Dim NewGraphics As Graphics = Graphics.FromImage(NewBitmap)

    'NewBitmap auf NewGraphics zeichnen
    NewGraphics.DrawImage(Image, New Rectangle(0, 0, NewBitmap.Width, NewBitmap.Height), 0, 0, Image.Width, Image.Height, GraphicsUnit.Pixel, ImgAttr)

    'Ressource freigeben
    NewGraphics.Dispose()
    ImgAttr.Dispose()
    Return NewBitmap
End Function
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)



Diese Snippets könnten für Sie interessant sein:
[C#] Bitmap in Graustufen wandeln
[C#] Bitmap schneller in Graustufen wandeln
[VB.NET] Bildgröße verändern (Verhältnis)
[VB.NET] Bildgröße verändern (Prozentual)
[VB.NET] Bildgröße verändern (Manuell)
[VB.NET] Neues Größenverhältnis eines Bilds berechnen
[VB.NET] JPEG Bild komprimieren
[VB.NET] Bild Transparent machen mit ColorMatrix
[VB.NET] Farben eines Bilds umkehren
[C#] GDI+ und das Paint Event
[C#] Bild anzeigen - Datei schließen
[VB.NET] Text auf Bild zeichnen
[C#] Größe verändern von Bildern
[ASP.net] Datei nach Bildupload prüfen
[C#] GetEuclidicDistance
[VB.NET] Bitmap Differenz Analyse
[VB.NET] Verschlüsslung von Dateien mit Vernam
[C#] Bild drehen (nach Winkelangabe)
[C#] Bildgröße im Verhältnis verändern (Interpoliert)
[C#] Bild von einem Control oder Panel
[VB.NET] Bildausschnitt auslesen
[VB.NET] Bildgröße im Verhältnis verändern (Interpoliert)
[VB.NET] Bildgröße prozentual verändern (Interpoliert)
[VB.NET] Bildgröße in beiden Dimensionen verändern (Interpoliert)
[VB.NET] Alle Pixel einer bestimmten Farbe neu einfärben
[C#] Bild steht auf reflektierendem Grund
[C#] Bilder verkleinern, beschneiden und beides gleichzeitig
[C#] Bild splitten
[VB.NET] Bytearray to Image / Image to Bytearray
[C#] Text2Bitmap (String in Bild umwandeln)
[C#] Hintergrundfarbe Transparenter Bilder (z.B. PNG) ändern
[C#] Größe eines Bildes mit mit gleichem Seitenverhältniss ändern
[C#] externes Programm aufrufen (andere Version) mit Parameter
[C#] Herausfinden welches Programm ein bestimmtes Dokument öffnet
[C#] Bilder aus *.resx Ressourcen Dateien in WPF verwenden
[VB.NET] Bild mit allen farben (True Color 16 Millionen Farben)
[C#] Schwarzweiß Bilder mit einem Farbverlauf füllen
[C#] Bild rotieren mit C#

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.