System.Drawing.Drawing2D Przestrzeń nazw
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia zaawansowane funkcje grafiki dwuwymiarowej i wektorowej.
Klasy
| Nazwa | Opis |
|---|---|
| AdjustableArrowCap |
Reprezentuje regulowaną czapkę liniową 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 wewnętrzne dane 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ędzl z 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
| Nazwa | Opis |
|---|---|
| CombineMode |
Określa sposób łączenia różnych regionów wycinków. |
| 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 komponowania. |
| 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żdego kreski w linii kreskowanej. |
| DashStyle |
Określa styl linii kreskowanych rysowanych za pomocą obiektu Pen. |
| FillMode |
Określa sposób wypełnienia wnętrza zamkniętej ścieżki. |
| FlushIntention |
Określa, czy polecenia w stosie graficznym są natychmiast przerywane (opróżniane) lub wykonywane tak szybko, jak to możliwe. |
| HatchStyle |
Określa różne wzorce dostępne dla obiektów HatchBrush. |
| 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 limitu, za pomocą których obiekt Pen może zakończyć wiersz. |
| LineJoin |
Określa sposób łączenia kolejnych segmentów linii lub krzywych na rysunku (podścieżce) zawartego w obiekcie GraphicsPath. |
| MatrixOrder |
Określa kolejność operacji przekształcania macierzy. |
| PathPointType |
Określa typ punktu w obiekcie GraphicsPath. |
| PenAlignment |
Określa wyrównanie obiektu Pen w odniesieniu do teoretycznej linii o zerowej szerokości. |
| PenType |
Określa typ wypełnienia obiektu Pen używany do wypełniania wierszy. |
| PixelOffsetMode |
Określa sposób przesunięcia pikseli podczas renderowania. |
| QualityMode |
Określa ogólną jakość renderowania obiektów GDI+ . |
| SmoothingMode |
Określa, czy smoothing (antyaliasing) jest stosowany do linii i krzywych oraz krawędzi wypełnionych obszarów. |
| WarpMode |
Określa typ przekształcenia warp stosowanego w metodzie Warp. |
| WrapMode |
Określa, w jaki sposób tekstura lub gradient jest kafelkowany, gdy jest mniejszy niż wypełniany obszar. |
Uwagi
Caution
System.Drawing Przestrzeń nazw ma pewne ograniczenia dotyczące niektórych systemów operacyjnych i typów aplikacji.
W Windows
System.Drawingzależy od biblioteki natywnej GDI+ dostarczanej jako część systemu operacyjnego. Niektóre jednostki SKU Windows, takie jak Windows Server Core lub Windows Nano, nie zawierają tej biblioteki natywnej w ramach systemu operacyjnego. Jeśli używasz tej przestrzeni nazw i nie można załadować biblioteki, wyjątki zostaną zgłoszone w czasie wykonywania.Niektóre typy w przestrzeni nazw
System.Drawingbazują na GDI+ który nie jest obsługiwany w usługach Windows i ASP.NET Core i ASP.NET. Te typy znajdują się w pakiecie NuGet System.Drawing.Common oraz dołączaniu System.Drawing.Bitmap elementów i System.Drawing.Font. Jednak typy pierwotne w przestrzeni nazw, takie jak System.Drawing.Color, , System.Drawing.SizeSystem.Drawing.Pointi System.Drawing.Rectangle, mogą być używane w dowolnej aplikacji.W .NET 5 i poprzednich wersjach pakiet NuGet System.Drawing.Common pakiet NuGet działa w systemach Windows, Linux i macOS. Istnieją jednak pewne różnice między platformami. W systemach Linux i macOS funkcja 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 Install .NET on Linux or Install .NET on macOS.
W .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 supported only on Windows (Obsługiwane tylko w systemie Windows).
Jeśli nie możesz użyć System.Drawing z aplikacją, zalecane alternatywy to 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 | Details |
|---|---|
| - Ścieżki grafiki i grafiki | Klasy GraphicsState i GraphicsContainer zgłaszają 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. |
| - Macierz i typy powiązane z 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. |
Caution
Klasy w przestrzeni nazw System.Drawing.Drawing2D nie są obsługiwane do użycia w usłudze Windows ani ASP.NET. 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.