Feedback

C# - Hintergrundfarbe Transparenter Bilder (z.B. PNG) ändern

Veröffentlicht von am 26.04.2008
(1 Bewertungen)
Ändert die Hintergrundfarbe eines Bildes. Wenn z.B. mit

Image Bild = Image.FromFile(@"C:\TEST.PNG");

ein Transparentes PNG Bild geladen wird, so kann mit dieser Funktion die eigentliche Hintergrundfarbe bestimmt werden.

Aufrufbeispiel:

pictureBox1.Image = ChangeBackColor(Image.FromFile(@"C:\TRANS1.PNG"), Color.Green);
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) für Administratoren - Kompakt

Nach dieser Schulung beherrschen Sie die Grundlagen des TFS. Sie erledigen administrative Aufgaben schnell und sicher.

C# Aufbaukurs

Sie haben grundlegende .NET- und C#-Kenntnisse und und wollen diese nun erweitern. Der Aufbaukurs C# führt Sie ein die Arbeit mit Interfaces und Delegates, Generics und Parallel Computing.

using System.Drawing;

/// <summary>
/// Ändert die Hintergrundfarbe eines Bildes (Ideal bei Transparente PNG's)
/// </summary>
/// <param name="Source">Originalbild als Image</param>
/// <param name="Back">Hintergrundfarbe</param>
/// <returns></returns>
public static Image ChangeBackColor(Image Source, Color Back)
{
	Bitmap objBitmap = new Bitmap(Source.Width, Source.Height);
	using (Graphics objGfx = System.Drawing.Graphics.FromImage(objBitmap))
	{
		objGfx.FillRectangle(new SolidBrush(Back), 0, 0, Source.Width, Source.Height);
		objGfx.DrawImage(Source, 0, 0);
	}
	return objBitmap;
}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!