Feedback

C# - Bilder und Logos mit dem PathGradientBrush erstellen

Veröffentlicht von am 18.03.2008
(4 Bewertungen)
Für Backgrounds oder Logos können Polygone mithilfe der PathGradientBrush-Klasse selbst
erstellt werden.
GFU-Schulungen  [Anzeige]

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

Nach Teilnahme an dieser Schulung sind Ihnen die Grundlagen von ALM geläufig. Sie planen und steuern Projekte effizient mit dem Visual Studio Team Foundation Server.

VB.NET Aufbau

Sie verfügen nach der Schulung über fundierte Kenntnisse in der Arbeit mit objektorientierten Modellen in VB.NET und können wiederverwendbare Komponenten eigenständig erzeugen.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;

namespace Beispiel_PathGradientBrush
{
    public partial class Form1 : Form
    {     
        public Form1()
        {
            InitializeComponent();
        }
               
        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics gr = e.Graphics;

            // Bestimme die Punkte des Polygons in einem Array
            Point[] points = {new Point(75, 0), new Point(100, 50),
                              new Point(150, 50), new Point(112, 90),
                              new Point(150, 90), new Point(75, 110), 
                              new Point(0, 90), new Point(37, 90), 
                              new Point(0, 50), new Point(50, 50)};

            // Verwende das Array von Punkten um einen Pfad zu konstruieren
            GraphicsPath path = new GraphicsPath();
            path.AddLines(points);

            // Verwende den Pfad um einen PathGradientBrush zu konstruieren
            PathGradientBrush pgbr = new PathGradientBrush(path);

            // Setze die Farben der Punkte im Array.

            Color[] colors = new Color[] {Color.FromArgb(255, 0, 0, 0), Color.FromArgb(255, 0, 255, 0),
                                          Color.FromArgb(255, 0, 0, 255), Color.FromArgb(255, 255, 255, 0), 
                                          Color.FromArgb(255, 0, 0, 0), Color.FromArgb(255, 0, 255, 0),
                                          Color.FromArgb(255, 0, 0, 255), Color.FromArgb(255, 255, 255, 0),
                                          Color.FromArgb(255, 0, 0, 0), Color.FromArgb(255, 0, 255, 0)};

            
            // Bestimme die Farbe Rot in der Mitte des Pfades
            pgbr.CenterColor = Color.Red;

            // Bestimme die umschließenden Farben mit den im Array festgelegten Farben                 
            pgbr.SurroundColors = colors;
                        
            gr.FillPath(pgbr, path);                        
        }
    }
}
Abgelegt unter PathGradientBrush, Polygone, GDI, Drawing.

2 Kommentare zum Snippet

Jürgen schrieb am 19.03.2008:
Entschuldigung, aber was steht denn dort? ich verstehe das nicht ;-)
Guter Code, ist bestimmt sehr brauchbar!
Gruß Jürgen!
Kurt Szymanski schrieb am 21.03.2008:
Freut' mich, das es Dir gefallen hat. Wünsche frohes Osterfest. KS
 

Logge dich ein, um hier zu kommentieren!

Ähnliche Snippets