System.Drawing.Drawing2D Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt erweiterte Funktionen für zweidimensionale Grafiken und Vektorgrafiken bereit.
Klassen
AdjustableArrowCap |
Stellt ein anpassbares pfeilförmiges Linienende dar. Diese Klasse kann nicht vererbt werden. |
Blend |
Definiert ein Übergangsschema für ein LinearGradientBrush-Objekt. Diese Klasse kann nicht vererbt werden. |
ColorBlend |
Definiert Arrays von Farben und Positionen, die zum Interpolieren des Blendings von Farben in einem Farbverlauf mit mehreren Farben verwendet werden. Diese Klasse kann nicht vererbt werden. |
CustomLineCap |
Kapselt ein benutzerdefiniertes Linienende ein. |
GraphicsContainer |
Stellt die internen Daten eines Grafikcontainers dar. Diese Klasse wird verwendet, wenn der Zustand eines Graphics-Objekts unter Verwendung der BeginContainer()-Methode und der EndContainer(GraphicsContainer)-Methode gespeichert wird. Diese Klasse kann nicht vererbt werden. |
GraphicsPath |
Stellt eine Reihe verbundener Linien und Kurven dar. Diese Klasse kann nicht vererbt werden. |
GraphicsPathIterator |
Bietet die Möglichkeit, untergeordnete Pfade in einem GraphicsPath zu durchlaufen und die in jedem untergeordneten Pfad enthaltenen Arten von Formen zu überprüfen. Diese Klasse kann nicht vererbt werden. |
GraphicsState |
Stellt den Zustand eines Graphics-Objekts dar. Dieses Objekt wird über den Aufruf der Save()-Methode zurückgegeben. Diese Klasse kann nicht vererbt werden. |
HatchBrush |
Definiert einen rechteckigen Pinsel mit einer Schraffurart, einer Vordergrund- und einer Hintergrundfarbe. Diese Klasse kann nicht vererbt werden. |
LinearGradientBrush |
Kapselt ein Brush-Objekt mit einem linearen Farbverlauf. Diese Klasse kann nicht vererbt werden. |
Matrix |
Kapselt eine affine 3 x 3-Matrix ein, die eine geometrische Transformation darstellt. Diese Klasse kann nicht vererbt werden. |
PathData |
Enthält die grafischen Daten, aus denen ein GraphicsPath-Objekt besteht. Diese Klasse kann nicht vererbt werden. |
PathGradientBrush |
Kapselt ein Brush-Objekt, das das Innere eines GraphicsPath-Objekts mit einem Farbverlauf ausfüllt. Diese Klasse kann nicht vererbt werden. |
RegionData |
Kapselt die Daten, aus denen ein Region-Objekt besteht. Diese Klasse kann nicht vererbt werden. |
Enumerationen
CombineMode |
Gibt an, wie verschiedene Ausschneidebereiche kombiniert werden können. |
CompositingMode |
Gibt an, wie die Farben einer Quelle mit den Hintergrundfarben kombiniert werden. |
CompositingQuality |
Gibt das während des Zusammensetzens zu verwendende Qualitätsniveau an. |
CoordinateSpace |
Gibt an, welches System bei der Auswertung von Koordinaten verwendet wird. |
DashCap |
Gibt die Art der grafischen Form an, die an den Enden jeden Striches einer gestrichelten Linie verwendet werden soll. |
DashStyle |
Gibt die Art der gestrichelten Linien an, die mit einem Pen-Objekt gezeichnet werden. |
FillMode |
Gibt an, wie das Innere eines geschlossenen Pfades ausgefüllt wird. |
FlushIntention |
Gibt an, ob Befehle im Grafikstapel sofort beendet (weggeschrieben) werden oder so bald wie möglich ausgeführt werden. |
HatchStyle |
Gibt die verschiedenen für HatchBrush-Objekte zur Verfügung stehenden Muster an. |
InterpolationMode |
Die InterpolationMode-Enumeration gibt den Algorithmus an, der beim Skalieren oder Drehen von Bildern verwendet wird. |
LinearGradientMode |
Gibt die Richtung eines linearen Farbverlaufs an. |
LineCap |
Gibt die verfügbaren Endenformate an, mit denen ein Pen-Objekt eine Linie beenden kann. |
LineJoin |
Gibt an, wie fortlaufende Linien- oder Kurvensegmente in einer in einem GraphicsPath-Objekt enthaltenen Abbildung (untergeordneter Pfad) verbunden werden. |
MatrixOrder |
Gibt die Reihenfolge von Matrixtransformationen an. |
PathPointType |
Gibt den Punkttyp in einem GraphicsPath-Objekt an. |
PenAlignment |
Gibt die Ausrichtung eines Pen-Objekts relativ zur theoretischen Linie der Stärke 0 an. |
PenType |
Gibt den Fülltyp an, den ein Pen-Objekt zum Ausfüllen von Linien verwendet. |
PixelOffsetMode |
Gibt den Offset von Pixeln während des Renderns an. |
QualityMode |
Gibt die allgemeine Qualität beim Rendern von GDI+-Objekten an. |
SmoothingMode |
Gibt an, ob Glättung (Antialiasing) auf Linien, Kurven und Ränder von gefüllten Bereichen angewendet wird. |
WarpMode |
Gibt den in einer Warp-Methode angewendeten Typ von Verzerrungstransformation an. |
WrapMode |
Gibt an, wie eine Struktur oder ein Farbverlauf gekachelt wird, wenn die Struktur bzw. der Farbverlauf kleiner als der auszufüllende Bereich ist. |
Hinweise
Achtung
Für den System.Drawing
Namespace gelten einige Einschränkungen für bestimmte Betriebssysteme und Anwendungstypen.
Für Windows hängt von der nativen
System.Drawing
GDI+-Bibliothek ab, die als Teil des Betriebssystems ausgeliefert wird. Einige Windows-SKUs, z. B. Windows Server Core oder Windows Nano, enthalten diese native Bibliothek nicht als Teil des Betriebssystems. Wenn Sie diesen Namespace verwenden und die Bibliothek nicht geladen werden kann, werden Ausnahmen zur Laufzeit ausgelöst.Einige Typen im
System.Drawing
Namespace basieren auf GDI+, das in Windows-Diensten und ASP.NET Core- und ASP.NET-Apps nicht unterstützt wird. Diese Typen befinden sich im NuGet-Paket System.Drawing.Common und umfassen System.Drawing.Bitmap und System.Drawing.Font. Primitive Typen im Namespace wie System.Drawing.Color, System.Drawing.Size, System.Drawing.Pointund System.Drawing.Rectanglekönnen jedoch in jeder Anwendung verwendet werden.In .NET 5 und früheren Versionen funktioniert das NuGet-Paket System.Drawing.Common unter Windows, Linux und macOS. Es gibt jedoch einige Plattformunterschiede. Unter Linux und macOS wird die GDI+-Funktionalität von der Bibliothek libgdiplus) implementiert. Diese Bibliothek ist in den meisten Linux-Distributionen nicht standardmäßig installiert und unterstützt nicht alle Funktionen von GDI+ unter Windows und macOS. Es gibt auch Plattformen, auf denen libgdiplus überhaupt nicht verfügbar ist. Um Typen aus dem System.Drawing.Common-Paket unter Linux und macOS zu verwenden, müssen Sie libgdiplus separat installieren. Weitere Informationen finden Sie unter Installieren von .NET unter Linux oder Installieren von .NET unter macOS.
In .NET 6 und höheren Versionen wird das NuGet-Paket System.Drawing.Common nur unter Windows-Betriebssystemen unterstützt. Weitere Informationen finden Sie unter System.Drawing.Common wird nur unter Windows unterstützt.
Wenn Sie die Anwendung nicht verwenden System.Drawing
können, werden ImageSharp, SkiaSharp, Windows Imaging Components und Microsoft.Maui.Graphics empfohlen.
In der folgenden Tabelle sind einige der wichtigen Klassen und Enumerationen im System.Drawing.Drawing2D Namespace aufgeführt, die in Kategorien gruppiert sind.
Klassenkategorie | Details |
---|---|
- Grafik- und Grafikpfade | Die GraphicsState Klassen und GraphicsContainer melden Informationen zum aktuellen Graphics Objekt. GraphicsPath -Klassen stellen eine Reihe von Linien und Kurven dar. Die GraphicsPathIterator Klassen und PathData bieten detaillierte Informationen über den Inhalt eines GraphicsPath Objekts. |
- Matrix- und Transformationsbezogene Typen | Die Matrix -Klasse stellt eine Matrix für geometrische Transformationen dar. Die MatrixOrder Enumeration gibt die Reihenfolge für Matrixtransformationen an. |
– Pinselklassen | Mit den PathGradientBrush Klassen und HatchBrush können Sie Shapes entweder mit einem Farbverlauf oder einem Schraffurmuster füllen. |
- Zeilenbezogene Enumeration | Mit den LineCap Enumerationen und CustomLineCap können Sie Cap-Formatvorlagen für eine Linie angeben. Mit der Enumeration können Sie angeben, LineJoin wie zwei Zeilen in einen Pfad eingebunden werden. Mit PenAlignment der Enumeration können Sie die Ausrichtung der Zeichenspitze angeben, wenn Sie eine Linie zeichnen. Die PenType Enumeration gibt das Muster an, mit dem eine Zeile gefüllt werden soll. |
- Enumerationen im Zusammenhang mit dem Füllen von Shapes und Pfaden | Die HatchStyle Enumeration gibt Füllstile für ein HatchBrushan. Die Blend -Klasse gibt ein Mischungsmuster für ein LinearGradientBrushan. Die FillMode Enumeration gibt das Füllformat für ein GraphicsPathan. |
Achtung
Klassen im Namespace werden für die System.Drawing.Drawing2D Verwendung in einem Windows- oder ASP.NET-Dienst nicht unterstützt. Der Versuch, diese Klassen in einem dieser Anwendungstypen zu verwenden, kann zu unerwarteten Problemen führen, z. B. zu geringerer Dienstleistung und Laufzeitausnahmen.