Interessanter wird die Sache, wenn du einen Stift mit einem dicken Strich verwendest:
Rectangle bereich = Rectangle.Inflate(rechteck, -20, -20); using (Pen stift = new Pen(Color.Red, 11.0f)) // Strichstärke ist 11.0f { g.DrawLine(stift, bereich.Left, bereich.Top, bereich.Right, bereich.Bottom); }
Hier ist die Strickstärke auf 11 eingestellt. Die Farbe eines breiten Striches wird zu beiden Seiten der Linie verteilt. Du kannst das sehr gut sehen, wenn du eine Linie, die du mit einem breiten Stift gezeichnet hast, in einer anderen Farbe nochmals mit der Strichstärke 1.0 zeichnest. Dazu musst du das letzte Beispiel nur um drei Anweisungen ergänzen, die die Strickstärke und Farbe des Stiftes ändern und die Linie anschließend nochmals zeichnen:
Rectangle bereich = Rectangle.Inflate(rechteck, -20, -20); using (Pen stift = new Pen(Color.Red, 11.0f)) { g.DrawLine(stift, bereich.Left, bereich.Top, bereich.Right, bereich.Bottom); stift.Color = Color.White; // Farbe neu festlegen stift.Width = 1.0f; // Strichstärke auf 1.0f setzen g.DrawLine(stift, bereich.Left, bereich.Top, bereich.Right, bereich.Bottom); // Strich nochmals zeichnen }
Beachte, dass in diesen beiden Beispielen keine Kantenglättung verwendet wurde. Die Sprünge sowohl an den Rändern des roten Strichs als auch in der weißen Linie sind deutlich zu sehen.
Füge nun Kantenglättung in beide Beispiele ein und vergleiche die Ergebnisse. Versuche zu entscheiden, welche Darstellungsform dir lieber ist.