SKCanvas Klasse

Definition

Kapselt den gesamten Zustand zum Zeichnen in ein Gerät (Bitmap oder Oberfläche).

public class SKCanvas : SkiaSharp.SKObject
Vererbung
Abgeleitet

Beispiele

var info = new SKImageInfo(640, 480);
using (var surface = SKSurface.Create(info)) {
    SKCanvas canvas = surface.Canvas;

    canvas.Clear(SKColors.White);

    // set up drawing tools
    var paint = new SKPaint {
        IsAntialias = true,
        Color = new SKColor(0x2c, 0x3e, 0x50),
        StrokeCap = SKStrokeCap.Round
    };

    // create the Xamagon path
    var path = new SKPath();
    path.MoveTo(71.4311121f, 56f);
    path.CubicTo(68.6763107f, 56.0058575f, 65.9796704f, 57.5737917f, 64.5928855f, 59.965729f);
    path.LineTo(43.0238921f, 97.5342563f);
    path.CubicTo(41.6587026f, 99.9325978f, 41.6587026f, 103.067402f, 43.0238921f, 105.465744f);
    path.LineTo(64.5928855f, 143.034271f);
    path.CubicTo(65.9798162f, 145.426228f, 68.6763107f, 146.994582f, 71.4311121f, 147f);
    path.LineTo(114.568946f, 147f);
    path.CubicTo(117.323748f, 146.994143f, 120.020241f, 145.426228f, 121.407172f, 143.034271f);
    path.LineTo(142.976161f, 105.465744f);
    path.CubicTo(144.34135f, 103.067402f, 144.341209f, 99.9325978f, 142.976161f, 97.5342563f);
    path.LineTo(121.407172f, 59.965729f);
    path.CubicTo(120.020241f, 57.5737917f, 117.323748f, 56.0054182f, 114.568946f, 56f);
    path.LineTo(71.4311121f, 56f);
    path.Close();

    // draw the Xamagon path
    canvas.DrawPath(path, paint);
}

Hinweise

Ein Zeichenbereich kapselt den gesamten Zustand zum Zeichnen in ein Gerät (Bitmap oder Oberfläche).

Dies umfasst einen Verweis auf das Gerät selbst und einen Stapel von Matrix-/Clipwerten. Bei einem bestimmten Draw-Aufruf (z. B. DrawRect) wird die Geometrie des zu zeichnenden Objekts durch die Verkettung aller Matrizen im Stapel transformiert. Die transformierte Geometrie wird durch die Schnittmenge aller Clips im Stapel abgeschnitten.

Während der Zeichenbereich den Zustand des Zeichengeräts enthält, wird der Zustand (Formatvorlage) des zu zeichnenden Objekts von der Farbe gehalten, die als Parameter für jede der "Draw"-Methoden bereitgestellt wird. Die Farbe enthält Attribute wie Farbe, Schriftart, Textgröße, Strichbreite, Shader (z. B. Farbverläufe, Muster) usw.

Die Canvas wird beim Zugriff auf die SKSurface.Canvas Eigenschaft einer Oberfläche zurückgegeben.

Construction

SkiaSharp verfügt über mehrere Back-Ends, die Zeichnungsbefehle empfangen SKCanvas , darunter:

  • Raster-Surface
  • GPU-Surface
  • PDF-Dokument
  • XPS-Dokument (experimentell)
  • SVG Canvas (experimentell)
  • Bild
  • Null Canvas (zu Testzwecken)

Erstellen eines Raster-Surface

Das Raster-Back-End zeichnet zu einem Speicherblock. Dieser Speicher kann von SkiaSharp oder vom Client verwaltet werden.

Die empfohlene Methode zum Erstellen einer Canvas für das Raster- und Ganesh-Back-End ist die Verwendung eines SKSurfaceObjekts, das den Speicher verwaltet, in den die Canvasbefehle gezeichnet werden.

// define the surface properties
var info = new SKImageInfo(256, 256);

// construct a new surface
var surface = SKSurface.Create(info);

// get the canvas from the surface
var canvas = surface.Canvas;

// draw on the canvas ...

Alternativ könnten wir den Speicher für die Oberfläche explizit angegeben haben, anstatt SkiaSharp zur Verwaltung aufzufordern.

// define the surface properties
var info = new SKImageInfo(256, 256);

// allocate memory
var memory = Marshal.AllocCoTaskMem(info.BytesSize);

// construct a surface around the existing memory
var surface = SKSurface.Create(info, memory, info.RowBytes);

// get the canvas from the surface
var canvas = surface.Canvas;

// draw on the canvas ...

Erstellen einer GPU-Surface

GPU-Oberflächen müssen über ein GRContext Objekt verfügen, das den GPU-Kontext verwaltet, sowie zugehörige Caches für Texturen und Schriftarten.

GRContext Objekte werden einem mit OpenGL-Kontexten oder Vulkan-Geräten abgeglichen. Das heißt, alle SKSurface Instanzen, die mit demselben OpenGL-Kontext oder Vulkan-Gerät gerendert werden, sollten ein GRContext.

SkiaSharp erstellt keinen OpenGL-Kontext oder ein Vulkan-Gerät für Sie. Im OpenGL-Modus wird auch davon ausgegangen, dass der richtige OpenGL-Kontext auf dem aktuellen Thread ausgeführt wurde, wenn SkiaSharp-Aufrufe getätigt werden.

// an OpenGL context must be created and set as current

// define the surface properties
var info = new SKImageInfo(256, 256);

// create the surface
var context = GRContext.CreateGl();
var surface = SKSurface.Create(context, false, info);

// get the canvas from the surface
var canvas = surface.Canvas;

// draw on the canvas ...

Erstellen eines PDF-Dokuments

Das PDF-Back-End verwendet SKDocument anstelle von SKSurface, da ein Dokument mehrere Seiten enthalten muss.

// create the document
var stream = SKFileWStream.OpenStream("document.pdf");
var document = SKDocument.CreatePdf(stream);

// get the canvas from the page
var canvas = document.BeginPage(256, 256);

// draw on the canvas ...

// end the page and document
document.EndPage();
document.Close();

Erstellen eines XPS-Dokuments (experimentell)

Das XPS-Back-End verwendet SKDocument anstelle von SKSurface, da ein Dokument mehrere Seiten enthalten muss.

// create the document
var stream = SKFileWStream.OpenStream("document.xps");
var document = SKDocument.CreateXps(stream);

// get the canvas from the page
var canvas = document.BeginPage(256, 256);

// draw on the canvas ...

// end the page and document
document.EndPage();
document.Close();

Erstellen einer SVG-Canvas (experimentell)

Das SVG-Back-End verwendet SKSvgCanvas.

// create the canvas
var stream = SKFileWStream.OpenStream("image.svg");
var writer = new SKXmlStreamWriter(stream);
var canvas = SKSvgCanvas.Create(SKRect.Create(256, 256), writer);

// draw on the canvas ...

Erstellen eines Bilds

Das XPS-Back-End verwendet SKPictureRecorder anstelle von SKSurface.

// create the picture recorder
var recorder = new SKPictureRecorder();

// get the canvas from the page
var canvas = recorder.BeginRecording(SKRect.Create(256, 256));

// draw on the canvas ...

// finish recording
var picture = recorder.EndRecording();

Erstellen einer Null-Canvas (zu Testzwecken)

Der Null-Zeichenbereich ist ein Zeichenbereich, der alle Zeichenbefehle ignoriert und nichts ausführt.

// create the dummy canvas
var canvas = new SKNoDrawCanvas(256, 256);

// draw on the canvas ...

Verwandlungen

Die Canvas unterstützt eine Reihe von 2D-Transformationen. Im Gegensatz zu anderen 2D-Grafiksystemen wie CoreGraphics oder Kairo erweitert SKCanvas die Transformationen um Perspektiven.

Mit den ScaleRotateDegreesSkewTranslateRotateRadians 2D-Transformationen können Sie einige der gängigsten 2D-Transformationen ausführen.

Für mehr Kontrolle können Sie eine SetMatrix beliebige Transformation mithilfe der SKMatrix und der Concat Transformation mit der aktuellen Matrix verketten SKMatrix .

Dies ResetMatrix kann verwendet werden, um den Status der Matrix zurückzusetzen.

Zeichnung

Die Zeichnungsvorgänge können einen SKPaint Parameter verwenden, um die Zeichnung zu beeinflussen. Sie verwenden SKPaint Objekte, um die Format- und Farbinformationen zwischenzuspeichern, um Geometrien, Texte und Bitmaps zu zeichnen.

Beschneiden und Zustand

Es ist möglich, die aktuellen Transformationen zu speichern, indem Sie die Save Methode aufrufen, die die aktuelle Transformationsmatrix behält, Sie können dann die Matrix ändern und den vorherigen Zustand mithilfe der Restore Methoden RestoreToCount wiederherstellen.

Darüber hinaus ist es möglich, einen neuen Zustand zu verschieben, mit SaveLayer dem eine Offscreenkopie eines Bereichs erstellt wird, und sobald die Zeichnung abgeschlossen ist, die Restore() Methode aufruft, die die Offscreen-Bitmap in diesen Zeichenbereich kopiert.

Konstruktoren

Name Beschreibung
SKCanvas(SKBitmap)

Erstellt einen Zeichenbereich mit der angegebenen Bitmap, in die gezeichnet werden soll.

Eigenschaften

Name Beschreibung
Context

Ruft den GPU-Aufzeichnungskontext ab, der diesem Zeichenbereich zugeordnet ist.

DeviceClipBounds

Ruft die Grenzen des aktuellen Clips (in Gerätekoordinaten) ab.

Handle

Dient zum Abrufen oder Festlegen des Handles auf das zugrunde liegende systemeigene Objekt.

(Geerbt von SKObject)
IgnorePublicDispose

Ruft einen Wert ab, der angibt, ob der Aufruf der Öffentlichen Dispose() no-opwerden soll.

(Geerbt von SKNativeObject)
IsClipEmpty

Ruft einen Wert ab, der angibt, ob der aktuelle Clip leer ist.

IsClipRect

Ruft einen Wert ab, der angibt, ob der aktuelle Clip ein Rechteck ist.

IsDisposed

Ruft einen Wert ab, der angibt, ob das Objekt bereits verworfen wurde.

(Geerbt von SKNativeObject)
LocalClipBounds

Ruft die Grenzen des aktuellen Clips (in lokalen Koordinaten) ab.

OwnsHandle

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob dieses Objekt sein Handle besitzt und das systemeigene Objekt zerstören soll, wenn es verworfen wird.

(Geerbt von SKNativeObject)
SaveCount

Ruft die Anzahl der Matrix-/Clipzustände im privaten Stapel des Zeichenbereichs ab.

Surface

Ruft die Oberfläche ab, die diesem Zeichenbereich zugeordnet ist.

TotalMatrix

Ruft die aktuelle Matrix auf dem Zeichenbereich ab.

TotalMatrix44

Ruft die aktuelle 4x4-Transformationsmatrix auf der Canvas ab.

Methoden

Name Beschreibung
Clear()

Ersetzt alle Pixel im aktuellen Clip des Zeichenbereichs durch die Empty Farbe.

Clear(SKColor)

Ersetzt alle Pixel im aktuellen Clip des Zeichenbereichs durch die angegebene Farbe.

Clear(SKColorF)

Füllt den gesamten Zeichenbereich mit der angegebenen Farbe aus.

ClipPath(SKPath, SKClipOperation, Boolean)

Ändern Sie den aktuellen Clip mit dem angegebenen Pfad.

ClipRect(SKRect, SKClipOperation, Boolean)

Ändern Sie den aktuellen Clip mit dem angegebenen Rechteck.

ClipRegion(SKRegion, SKClipOperation)

Ändern Sie den aktuellen Clip mit dem angegebenen Bereich.

ClipRoundRect(SKRoundRect, SKClipOperation, Boolean)

Ändern Sie den aktuellen Clip mit dem angegebenen abgerundeten Rechteck.

Concat(SKMatrix)

Verkettet die bereitgestellte Transformationsmatrix mit der aktuellen Transformationsmatrix.

Concat(SKMatrix44)

Verkettet die aktuelle Matrix mit der angegebenen 4x4-Matrix.

Discard()

Macht den Inhalt des Zeichenbereichs nicht definiert.

Dispose()

Gibt alle von diesem SKNativeObjectRessourcen verwendeten Ressourcen frei.

(Geerbt von SKNativeObject)
Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die von den SKCanvas verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei.

DisposeInternal()

Löst einen Dispose-Wert aus, der den Wert von IgnorePublicDispose.

(Geerbt von SKNativeObject)
DisposeManaged()

Implementiert durch abgeleitete SKObject Typen, um verwaltete Objekte zu zerstören.

(Geerbt von SKObject)
DisposeNative()

Implementiert durch abgeleitete SKObject Typen, um systemeigene Objekte zu zerstören.

DisposeUnownedManaged()

Implementiert durch abgeleitete SKObject Typen zum Verwerfen von verwalteten Objekten, die nicht im Besitz dieser Instanz sind.

(Geerbt von SKObject)
DrawAnnotation(SKRect, String, SKData)

Senden Sie ein Schlüssel-Wert-Paar "Annotation" an den Zeichenbereich.

DrawArc(SKRect, Single, Single, Boolean, SKPaint)

Zeichnet einen Bogen auf dem Zeichenbereich.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKColor[], SKBlendMode, SKPaint)
Veraltet.

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit Farbmischung.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKColor[], SKBlendMode, SKRect, SKPaint)
Veraltet.

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit Culling-Unterstützung.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKColor[], SKBlendMode, SKSamplingOptions, SKPaint)

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit Sampling und Farbmischung.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKColor[], SKBlendMode, SKSamplingOptions, SKRect, SKPaint)

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit allen Optionen.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKPaint)
Veraltet.

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit Transformationen.

DrawAtlas(SKImage, SKRect[], SKRotationScaleMatrix[], SKSamplingOptions, SKPaint)

Zeichnet eine Reihe von Sprites aus einem Atlasbild mit Transformationen und Samplingoptionen.

DrawBitmap(SKBitmap, Single, Single, SKPaint)
Veraltet.

Zeichnet eine Bitmap auf dem Zeichenbereich.

DrawBitmap(SKBitmap, Single, Single, SKSamplingOptions, SKPaint)

Zeichnet eine Bitmap an den angegebenen Koordinaten mithilfe der angegebenen Samplingoptionen und Farben.

DrawBitmap(SKBitmap, SKPoint, SKPaint)
Veraltet.

Zeichnet eine Bitmap auf dem Zeichenbereich.

DrawBitmap(SKBitmap, SKPoint, SKSamplingOptions, SKPaint)

Zeichnet eine Bitmap an der angegebenen Position mithilfe der angegebenen Samplingoptionen und Farben.

DrawBitmap(SKBitmap, SKRect, SKPaint)
Veraltet.

Zeichnet eine Bitmap auf dem Zeichenbereich.

DrawBitmap(SKBitmap, SKRect, SKRect, SKPaint)
Veraltet.

Zeichnet eine Bitmap auf dem Zeichenbereich.

DrawBitmap(SKBitmap, SKRect, SKRect, SKSamplingOptions, SKPaint)

Zeichnet einen Teil der angegebenen Bitmap mithilfe der angegebenen Samplingoptionen in das Zielrechteck.

DrawBitmap(SKBitmap, SKRect, SKSamplingOptions, SKPaint)

Zeichnet die angegebene Bitmap mithilfe der angegebenen Samplingoptionen in das Zielrechteck.

DrawBitmapLattice(SKBitmap, Int32[], Int32[], SKRect, SKFilterMode, SKPaint)

Zeichnet eine Bitmap mit Gitterskalierung mit expliziten Divisionen und Filtermodus.

DrawBitmapLattice(SKBitmap, Int32[], Int32[], SKRect, SKPaint)

Zeichnet die Bitmap, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawBitmapLattice(SKBitmap, SKLattice, SKRect, SKFilterMode, SKPaint)

Zeichnet eine Bitmap mit Gitterskalierung (neun Patch) mit dem angegebenen Filtermodus.

DrawBitmapLattice(SKBitmap, SKLattice, SKRect, SKPaint)

Zeichnet die Bitmap, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawBitmapNinePatch(SKBitmap, SKRectI, SKRect, SKFilterMode, SKPaint)

Zeichnet eine Bitmap mit neun Patchskalierung mit dem angegebenen Filtermodus.

DrawBitmapNinePatch(SKBitmap, SKRectI, SKRect, SKPaint)

Zeichnet die Bitmap, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawCircle(Single, Single, Single, SKPaint)

Zeichnet einen Kreis auf dem Zeichenbereich.

DrawCircle(SKPoint, Single, SKPaint)

Zeichnet einen Kreis auf dem Zeichenbereich.

DrawColor(SKColor, SKBlendMode)

Füllt den aktuellen Beschneidungsbereich mit der angegebenen Farbe mit der angegebenen Farbe und dem Blendmodus.

DrawColor(SKColorF, SKBlendMode)

Füllt den gesamten Zeichenbereich mit der angegebenen Farbe mithilfe des Blendmodus aus.

DrawDrawable(SKDrawable, Single, Single)

Zeichnet eine zeichnungsfähige Zeichnung auf dem Zeichenbereich.

DrawDrawable(SKDrawable, SKMatrix)

Zeichnet eine zeichnungsfähige Zeichnung auf dem Zeichenbereich.

DrawDrawable(SKDrawable, SKPoint)

Zeichnet eine zeichnungsfähige Zeichnung auf dem Zeichenbereich.

DrawImage(SKImage, Single, Single, SKPaint)
Veraltet.

Zeichnet ein Bild auf dem Zeichenbereich.

DrawImage(SKImage, Single, Single, SKSamplingOptions, SKPaint)

Zeichnet ein Bild an den angegebenen Koordinaten mit Samplingoptionen.

DrawImage(SKImage, SKPoint, SKPaint)
Veraltet.

Zeichnet ein Bild auf dem Zeichenbereich.

DrawImage(SKImage, SKPoint, SKSamplingOptions, SKPaint)

Zeichnet ein Bild an dem angegebenen Punkt mit Samplingoptionen.

DrawImage(SKImage, SKRect, SKPaint)
Veraltet.

Zeichnet ein Bild auf dem Zeichenbereich.

DrawImage(SKImage, SKRect, SKRect, SKPaint)
Veraltet.

Zeichnet ein Bild auf dem Zeichenbereich.

DrawImage(SKImage, SKRect, SKRect, SKSamplingOptions, SKPaint)

Zeichnet einen Teil eines Bilds, das skaliert wird, um das Zielrechteck mit Samplingoptionen anzupassen.

DrawImage(SKImage, SKRect, SKSamplingOptions, SKPaint)

Zeichnet ein Bild, das skaliert wird, um das Zielrechteck mit Samplingoptionen anzupassen.

DrawImageLattice(SKImage, Int32[], Int32[], SKRect, SKFilterMode, SKPaint)

Zeichnet ein Bild mithilfe der Gitterskalierung mit expliziten Divisionen und Filtermodus.

DrawImageLattice(SKImage, Int32[], Int32[], SKRect, SKPaint)

Zeichnet das Bild, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawImageLattice(SKImage, SKLattice, SKRect, SKFilterMode, SKPaint)

Zeichnet ein Bild mithilfe der Gitterskalierung (neun Patch) mit dem angegebenen Filtermodus.

DrawImageLattice(SKImage, SKLattice, SKRect, SKPaint)

Zeichnet das Bild, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawImageNinePatch(SKImage, SKRectI, SKRect, SKFilterMode, SKPaint)

Zeichnet ein Bild mit neun Patchskalierung mit dem angegebenen Filtermodus.

DrawImageNinePatch(SKImage, SKRectI, SKRect, SKPaint)

Zeichnet das Bild, gestreckt oder geschrumpft, um in das Zielrechteck zu passen.

DrawLine(Single, Single, Single, Single, SKPaint)

Zeichnet eine Linie auf dem Zeichenbereich.

DrawLine(SKPoint, SKPoint, SKPaint)

Zeichnet eine Linie auf dem Zeichenbereich.

DrawLinkDestinationAnnotation(SKRect, SKData)

Kommentieren Sie den Zeichenbereich, indem Sie den angegebenen Rechtecklink zu einem benannten Ziel erstellen (siehe DrawNamedDestinationAnnotation(SKPoint, SKData)).

DrawLinkDestinationAnnotation(SKRect, String)

Kommentieren Sie den Zeichenbereich, indem Sie den angegebenen Rechtecklink zu einem benannten Ziel erstellen (siehe DrawNamedDestinationAnnotation(SKPoint, String)).

DrawNamedDestinationAnnotation(SKPoint, SKData)

Kommentiert den Zeichenbereich durch Zuordnen eines Namens zum angegebenen Punkt (siehe DrawLinkDestinationAnnotation(SKRect, SKData)).

DrawNamedDestinationAnnotation(SKPoint, String)

Kommentiert den Zeichenbereich durch Zuordnen eines Namens zum angegebenen Punkt (siehe DrawLinkDestinationAnnotation(SKRect, String)).

DrawOval(Single, Single, Single, Single, SKPaint)

Zeichnet ein Oval auf dem Zeichenbereich.

DrawOval(SKPoint, SKSize, SKPaint)

Zeichnet ein Oval auf dem Zeichenbereich.

DrawOval(SKRect, SKPaint)

Zeichnet ein Oval auf dem Zeichenbereich.

DrawPaint(SKPaint)

Füllt den aktuellen Beschneidungspfad mit der angegebenen Farbe aus.

DrawPatch(SKPoint[], SKColor[], SKPoint[], SKBlendMode, SKPaint)

Zeichnet einen Coons-Patch auf dem Zeichenbereich mit dem angegebenen Blendmodus.

DrawPatch(SKPoint[], SKColor[], SKPoint[], SKPaint)

Zeichnet einen Coons-Patch auf der Canvas.

DrawPath(SKPath, SKPaint)

Zeichnet einen Pfad im Zeichenbereich.

DrawPicture(SKPicture, Single, Single, SKPaint)

Zeichnet ein Bild auf dem Zeichenbereich.

DrawPicture(SKPicture, SKMatrix, SKPaint)

Zeichnet ein Bild auf dem Zeichenbereich.

DrawPicture(SKPicture, SKPaint)

Zeichnet ein Bild auf dem Zeichenbereich.

DrawPicture(SKPicture, SKPoint, SKPaint)

Zeichnet ein Bild auf dem Zeichenbereich.

DrawPoint(Single, Single, SKColor)

Zeichnet einen Punkt im Zeichenbereich mit der angegebenen Farbe.

DrawPoint(Single, Single, SKPaint)

Zeichnet einen Punkt im Zeichenbereich mit der angegebenen Farbe.

DrawPoint(SKPoint, SKColor)

Zeichnet einen Punkt im Zeichenbereich mit der angegebenen Farbe.

DrawPoint(SKPoint, SKPaint)

Zeichnet einen Punkt im Zeichenbereich mit der angegebenen Farbe.

DrawPoints(SKPointMode, SKPoint[], SKPaint)

Zeichnet jeweils ein Array von Punkten, Linien oder einem Polygon im Zeichenbereich.

DrawRect(Single, Single, Single, Single, SKPaint)

Zeichnet ein Rechteck im Zeichenbereich.

DrawRect(SKRect, SKPaint)

Zeichnet ein Rechteck im Zeichenbereich.

DrawRegion(SKRegion, SKPaint)

Zeichnet die Kontur des angegebenen Bereichs mithilfe der angegebenen Farbe.

DrawRoundRect(Single, Single, Single, Single, Single, Single, SKPaint)

Zeichnet ein abgerundetes Rechteck im Zeichenbereich.

DrawRoundRect(SKRect, Single, Single, SKPaint)

Zeichnet ein abgerundetes Rechteck im Zeichenbereich.

DrawRoundRect(SKRect, SKSize, SKPaint)

Zeichnet ein abgerundetes Rechteck im Zeichenbereich.

DrawRoundRect(SKRoundRect, SKPaint)

Zeichnet ein abgerundetes Rechteck im Zeichenbereich.

DrawRoundRectDifference(SKRoundRect, SKRoundRect, SKPaint)

Zeichnet den Bereich zwischen zwei abgerundeten Rechtecke.

DrawSurface(SKSurface, Single, Single, SKPaint)

Zeichnet eine Oberfläche auf dem Zeichenbereich.

DrawSurface(SKSurface, Single, Single, SKSamplingOptions, SKPaint)

Zeichnet die angegebene Oberfläche an der angegebenen Position mithilfe der angegebenen Samplingoptionen auf den Zeichenbereich.

DrawSurface(SKSurface, SKPoint, SKPaint)

Zeichnet eine Oberfläche auf dem Zeichenbereich.

DrawSurface(SKSurface, SKPoint, SKSamplingOptions, SKPaint)

Zeichnet die angegebene Oberfläche am angegebenen Punkt mithilfe der angegebenen Samplingoptionen auf den Zeichenbereich.

DrawText(SKTextBlob, Single, Single, SKPaint)

Zeichnet einen Textblob auf dem Zeichenbereich an den angegebenen Koordinaten.

DrawText(String, Single, Single, SKFont, SKPaint)
Veraltet.

Zeichnet den angegebenen Text mit der Schriftart und dem Zeichnen an den angegebenen Koordinaten.

DrawText(String, Single, Single, SKTextAlign, SKFont, SKPaint)

Zeichnet den angegebenen Text, der mit der Schriftart und dem Zeichnen um die angegebenen Koordinaten ausgerichtet ist.

DrawText(String, SKPoint, SKFont, SKPaint)
Veraltet.

Zeichnet den angegebenen Text an dem angegebenen Punkt mit der Schriftart und dem Zeichnen.

DrawText(String, SKPoint, SKTextAlign, SKFont, SKPaint)

Zeichnet den angegebenen Text, der mit der Schriftart und dem Zeichnen um den angegebenen Punkt ausgerichtet ist.

DrawTextOnPath(String, SKPath, Single, Single, SKFont, SKPaint)
Veraltet.

Zeichnet Text entlang eines Pfads mit horizontalen und vertikalen Offsets.

DrawTextOnPath(String, SKPath, Single, Single, SKTextAlign, SKFont, SKPaint)

Zeichnet Text entlang eines Pfads mit Offsets und Ausrichtung.

DrawTextOnPath(String, SKPath, SKPoint, Boolean, SKFont, SKPaint)
Veraltet.

Zeichnet Text entlang eines Pfads mit optionaler Glyphenverzerrung mithilfe der angegebenen Schriftart.

DrawTextOnPath(String, SKPath, SKPoint, Boolean, SKTextAlign, SKFont, SKPaint)

Zeichnet Text entlang eines Pfads mit Ausrichtung und optionaler Glyphenverwendung.

DrawTextOnPath(String, SKPath, SKPoint, SKFont, SKPaint)
Veraltet.

Zeichnet Text mithilfe der angegebenen Schriftart entlang eines Pfads.

DrawTextOnPath(String, SKPath, SKPoint, SKTextAlign, SKFont, SKPaint)

Zeichnet Text entlang eines Pfads mit ausrichtung mithilfe der angegebenen Schriftart.

DrawUrlAnnotation(SKRect, SKData)

Kommentiert den Zeichenbereich durch Zuordnen der angegebenen URL zum angegebenen Rechteck (in lokalen Koordinaten).

DrawUrlAnnotation(SKRect, String)

Kommentiert den Zeichenbereich durch Zuordnen der angegebenen URL zum angegebenen Rechteck (in lokalen Koordinaten).

DrawVertices(SKVertexMode, SKPoint[], SKColor[], SKPaint)

Zeichnet ein Array von Scheitelpunkten, interpretiert als Dreiecke (basierend auf dem Modus).

DrawVertices(SKVertexMode, SKPoint[], SKPoint[], SKColor[], SKBlendMode, UInt16[], SKPaint)

Zeichnet ein Array von Scheitelpunkten, interpretiert als Dreiecke (basierend auf dem Modus).

DrawVertices(SKVertexMode, SKPoint[], SKPoint[], SKColor[], SKPaint)

Zeichnet ein Array von Scheitelpunkten, interpretiert als Dreiecke (basierend auf dem Modus).

DrawVertices(SKVertexMode, SKPoint[], SKPoint[], SKColor[], UInt16[], SKPaint)

Zeichnet ein Array von Scheitelpunkten, interpretiert als Dreiecke (basierend auf dem Modus).

DrawVertices(SKVertices, SKBlendMode, SKPaint)

Zeichnet eine Reihe von Scheitelpunkten.

Flush()

Löst die sofortige Ausführung aller ausstehenden Draw-Vorgänge aus.

GetDeviceClipBounds(SKRectI)

Gibt die Grenzen des aktuellen Clips (in Gerätekoordinaten) zurück.

GetLocalClipBounds(SKRect)

Gibt die Grenzen des aktuellen Clips (in lokalen Koordinaten) zurück.

QuickReject(SKPath)

Überprüft, ob der angegebene Pfad nach der Transformation durch die aktuelle Matrix vollständig außerhalb des aktuellen Clips liegt.

QuickReject(SKRect)

Überprüft, ob das angegebene Rechteck nach der Transformation der aktuellen Matrix vollständig außerhalb des aktuellen Clips liegt.

ResetMatrix()

Legt die aktuelle Matrix auf Identität fest.

Restore()

Stellen Sie den Canvaszustand wieder her.

RestoreToCount(Int32)

Stellt den Zustand effizient auf einer bestimmten Ebene wieder her.

RotateDegrees(Single, Single, Single)

Verkettet die aktuelle Matrix mit der angegebenen Drehung um den angegebenen Punkt.

RotateDegrees(Single)

Verkettet die aktuelle Matrix mit der angegebenen Drehung.

RotateRadians(Single, Single, Single)

Verkettet die aktuelle Matrix mit der angegebenen Drehung um den angegebenen Punkt.

RotateRadians(Single)

Verkettet die aktuelle Matrix mit der angegebenen Drehung.

Save()

Speichert den Canvaszustand.

SaveLayer()

Speichert die aktuelle Matrix und den Clip und weist einen Offscreenpuffer für die nachfolgende Zeichnung zu.

SaveLayer(SKCanvasSaveLayerRec)

Speichert die aktuelle Matrix und den Clip und weist mithilfe der angegebenen Parameter einen Offscreenpuffer zu.

SaveLayer(SKPaint)

Speichert den Canvasstatus und weist eine Offscreen-Bitmap zu.

SaveLayer(SKRect, SKPaint)

Speichert den Canvasstatus und weist eine Offscreen-Bitmap zu.

Scale(Single, Single, Single, Single)

Verkettet die aktuelle Matrix mit der angegebenen Skalierung am spezifischen Offset.

Scale(Single, Single)

Verkettet die aktuelle Matrix mit der angegebenen Skalierung.

Scale(Single)

Verkettet die aktuelle Matrix mit der angegebenen Skalierung.

Scale(SKPoint)

Verkettet die aktuelle Matrix mit der angegebenen Skalierung.

SetMatrix(SKMatrix)

Ersetzt die aktuelle Matrix durch eine Kopie der angegebenen Matrix.

SetMatrix(SKMatrix44)

Ersetzt die aktuelle Matrix durch eine Kopie der angegebenen 4x4-Matrix.

Skew(Single, Single)

Verkettet die aktuelle Matrix vor der angegebenen Schiefe.

Skew(SKPoint)

Verkettet die aktuelle Matrix vor der angegebenen Schiefe.

Translate(Single, Single)

Verkettet die aktuelle Matrix mit der angegebenen Übersetzung.

Translate(SKPoint)

Verkettet die aktuelle Matrix mit der angegebenen Übersetzung.

Gilt für: