System.Drawing.Drawing2D Przestrzeń nazw

Zapewnia zaawansowane funkcje grafiki dwuwymiarowej i wektorowej.

Klasy

AdjustableArrowCap

Reprezentuje regulowaną czapkę linii w kształcie strzałki. Klasa ta nie może być dziedziczona.

Blend

Definiuje wzorzec mieszania dla LinearGradientBrush obiektu. Klasa ta nie może być dziedziczona.

ColorBlend

Definiuje tablice kolorów i pozycji używanych do interpolacji kolorów w gradientzie wielokolorowym. Klasa ta nie może być dziedziczona.

CustomLineCap

Hermetyzuje niestandardowy limit wiersza zdefiniowany przez użytkownika.

GraphicsContainer

Reprezentuje dane wewnętrzne kontenera grafiki. Ta klasa jest używana podczas zapisywania Graphics stanu obiektu przy użyciu BeginContainer() metod i EndContainer(GraphicsContainer) . Klasa ta nie może być dziedziczona.

GraphicsPath

Reprezentuje serię połączonych linii i krzywych. Klasa ta nie może być dziedziczona.

GraphicsPathIterator

Zapewnia możliwość iterowania po ścieżkach podrzędnych w obiekcie GraphicsPath i testowania typów kształtów zawartych w każdej ścieżce podrzędnej. Klasa ta nie może być dziedziczona.

GraphicsState

Reprezentuje stan Graphics obiektu. Ten obiekt jest zwracany przez wywołanie Save() metod. Klasa ta nie może być dziedziczona.

HatchBrush

Definiuje prostokątny pędzel ze stylem kreskowania, kolorem pierwszego planu i kolorem tła. Klasa ta nie może być dziedziczona.

LinearGradientBrush

Hermetyzuje element Brush z gradientem liniowym. Klasa ta nie może być dziedziczona.

Matrix

Hermetyzuje macierz 3-by-3 affine reprezentującą transformację geometryczną. Klasa ta nie może być dziedziczona.

PathData

Zawiera dane graficzne tworzące GraphicsPath obiekt. Klasa ta nie może być dziedziczona.

PathGradientBrush

Hermetyzuje Brush obiekt, który wypełnia wnętrze GraphicsPath obiektu gradientem. Klasa ta nie może być dziedziczona.

RegionData

Hermetyzuje dane tworzące Region obiekt. Klasa ta nie może być dziedziczona.

Wyliczenia

CombineMode

Określa sposób łączenia różnych regionów przycinania.

CompositingMode

Określa sposób łączenia kolorów źródłowych z kolorami tła.

CompositingQuality

Określa poziom jakości do użycia podczas komposiowania.

CoordinateSpace

Określa system do użycia podczas oceniania współrzędnych.

DashCap

Określa typ kształtu graficznego, który ma być używany na obu końcach każdej kreski w linii kreskowanej.

DashStyle

Określa styl linii przerywanych rysowanych z obiektem Pen .

FillMode

Określa sposób wypełnienia wnętrza zamkniętej ścieżki.

FlushIntention

Określa, czy polecenia w stosie graficznym są przerywane (opróżniane) natychmiast lub wykonywane tak szybko, jak to możliwe.

HatchStyle

Określa różne wzorce dostępne dla HatchBrush obiektów.

InterpolationMode

Wyliczenie InterpolationMode określa algorytm używany podczas skalowania lub obracania obrazów.

LinearGradientMode

Określa kierunek gradientu liniowego.

LineCap

Określa dostępne style cap, za pomocą których Pen obiekt może zakończyć wiersz.

LineJoin

Określa sposób łączenia kolejnych segmentów linii lub krzywej na rysunku (podścieżce) zawartego GraphicsPath w obiekcie.

MatrixOrder

Określa kolejność operacji przekształcania macierzy.

PathPointType

Określa typ punktu w GraphicsPath obiekcie.

PenAlignment

Określa wyrównanie Pen obiektu w odniesieniu do teoretycznej linii o zerowej szerokości.

PenType

Określa typ wypełnienia Pen obiektu używany do wypełniania wierszy.

PixelOffsetMode

Określa sposób przesunięcia pikseli podczas renderowania.

QualityMode

Określa ogólną jakość podczas renderowania obiektów GDI+.

SmoothingMode

Określa, czy wygładzanie (antyaliasing) jest stosowane do linii i krzywych oraz krawędzi wypełnionych obszarów.

WarpMode

Określa typ przekształcenia warp zastosowanego w metodzie Warp .

WrapMode

Określa, jak tekstura lub gradient jest kafelków, gdy jest mniejsza niż obszar jest wypełniany.

Uwagi

Przestroga

System.Drawing Przestrzeń nazw ma pewne ograniczenia dotyczące niektórych systemów operacyjnych i typów aplikacji.

  • W systemie Windows System.Drawing zależy od biblioteki natywnej GDI+ dostarczanej jako część systemu operacyjnego. Niektóre jednostki SKU systemu Windows, takie jak Windows Server Core lub Windows Nano, nie zawierają tej natywnej biblioteki w ramach systemu operacyjnego. Jeśli używasz tej przestrzeni nazw i nie można załadować biblioteki, wyjątki będą zgłaszane w czasie wykonywania.

  • Niektóre typy w przestrzeni nazw korzystają z interfejsu System.DrawingGDI+, który nie jest obsługiwany w usługach systemu Windows i ASP.NET Core i aplikacjach ASP.NET. Te typy znajdują się w pakiecie NuGet System.Drawing.Common i obejmują System.Drawing.Bitmap i System.Drawing.Font. Jednak typy pierwotne w przestrzeni nazw, takie jak System.Drawing.Color, System.Drawing.Size, System.Drawing.Pointi System.Drawing.Rectangle, mogą być używane w dowolnej aplikacji.

  • W programie .NET 5 i wcześniejszych wersjach pakiet NuGet System.Drawing.Common działa w systemach Windows, Linux i macOS. Istnieją jednak pewne różnice między platformami. W systemach Linux i macOS funkcjonalność GDI+ jest implementowana przez bibliotekę libgdiplus . Ta biblioteka nie jest instalowana domyślnie w większości dystrybucji systemu Linux i nie obsługuje wszystkich funkcji GDI+ w systemach Windows i macOS. Istnieją również platformy, na których libgdiplus nie jest w ogóle dostępna. Aby używać typów z pakietu System.Drawing.Common w systemach Linux i macOS, musisz zainstalować bibliotekę libgdiplus oddzielnie. Aby uzyskać więcej informacji, zobacz Instalowanie platformy .NET w systemie Linux lub Instalowanie platformy .NET w systemie macOS.

  • W programie .NET 6 i nowszych wersjach pakiet NuGet System.Drawing.Common jest obsługiwany tylko w systemach operacyjnych Windows. Aby uzyskać więcej informacji, zobacz System.Drawing.Common only supported on Windows (Obsługiwane tylko w systemie Windows).

Jeśli nie możesz używać z System.Drawing aplikacją, zalecane alternatywy obejmują ImageSharp, SkiaSharp, Windows Imaging Components i Microsoft.Maui.Graphics.

W poniższej tabeli wymieniono niektóre ważne klasy i wyliczenia w System.Drawing.Drawing2D przestrzeni nazw pogrupowane w kategorie.

Kategoria klas Szczegóły
- Ścieżki grafiki i grafiki Klasy GraphicsState i GraphicsContainer raportują informacje o bieżącym Graphics obiekcie. GraphicsPath klasy reprezentują serię linii i krzywych. Klasy GraphicsPathIterator i PathData zawierają szczegółowe informacje o zawartości GraphicsPath obiektu.
— Typy powiązane z macierzą i transformacją Klasa Matrix reprezentuje macierz dla przekształceń geometrycznych. Wyliczenie MatrixOrder określa kolejność przekształceń macierzy.
- Klasy pędzla Klasy PathGradientBrush i HatchBrush umożliwiają wypełnianie kształtów odpowiednio gradientem lub wzorcem kreskowania.
- Wyliczenie związane z wierszami Wyliczenia LineCap i CustomLineCap umożliwiają określanie stylów limitu dla linii. Wyliczenie umożliwia określenie sposobu LineJoin łączenia dwóch wierszy w ścieżce. Wyliczenie PenAlignment umożliwia określenie wyrównania końcówki rysunku podczas rysowania linii. Wyliczenie PenType określa wzorzec, z który powinien zostać wypełniony wiersz.
- Wyliczenia związane z wypełnianiem kształtów i ścieżek Wyliczenie HatchStyle określa style wypełnienia dla elementu HatchBrush. Klasa Blend określa wzorzec mieszania dla klasy LinearGradientBrush. Wyliczenie FillMode określa styl wypełnienia dla elementu GraphicsPath.

Przestroga

Klasy w System.Drawing.Drawing2D przestrzeni nazw nie są obsługiwane do użycia w systemie Windows lub ASP.NET usługi. Próba użycia tych klas w jednym z tych typów aplikacji może powodować nieoczekiwane problemy, takie jak zmniejszona wydajność usługi i wyjątki czasu wykonywania.

Zobacz też