Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1562 | Anzahl registrierter User: 1893 | Besucher online: 21
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)

Bilder und Logos mit dem PathGradientBrush erstellen


Autor: Kurt Szymanski
Sprache: C#
Bewertung:
8.38 (3 votes)
Anzahl der Aufrufe: 5031
  
Kick it on dotnet-kicks.de  

Beschreibung:

Für Backgrounds oder Logos können Polygone mithilfe der PathGradientBrush-Klasse selbst
erstellt werden.

// Edit (Jan Welker)
Hier ist ein Screenshot:
http://dotnet-forum.de/photos/screenshots/picture739.aspx


Abgelegt unter: PathGradientBrush, Polygone, Drawing, GDI.



C#
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
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);                        
        }
    }
}
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.)

Jürgen schrieb am:  19.03.2008 17:06:13

Entschuldigung, aber was steht denn dort? ich verstehe das nicht ;-)
Guter Code, ist bestimmt sehr brauchbar!
Gruß Jürgen!
Jan Welker schrieb am:  19.03.2008 21:03:24

Hallo,
ich habe das Snippet mal getestet und einen Link zum Screenshot oben in der Beschreibung eingefügt. Klasse gemacht!
Jan
Kurt Szymanski schrieb am:  21.03.2008 15:53:54

Freut' mich, das es Dir gefallen hat. Wünsche frohes Osterfest. KS


Diese Snippets könnten für Sie interessant sein:

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