UNPKG

@shopify/react-native-skia

Version:

High-performance React Native Graphics using Skia

47 lines (46 loc) 3.38 kB
import type { Canvas, CanvasKit } from "canvaskit-wasm"; import type { BlendMode, ClipOp, FilterMode, MipmapMode, PointMode, SaveLayerFlag, ImageInfo, SkCanvas, SkColor, SkFont, SkImage, SkImageFilter, SkMatrix, SkPaint, SkPath, SkPicture, SkPoint, SkRect, SkRRect, SkSVG, SkTextBlob, SkVertices } from "../types"; import { HostObject } from "./Host"; export declare class JsiSkCanvas extends HostObject<Canvas, "Canvas"> implements SkCanvas { constructor(CanvasKit: CanvasKit, ref: Canvas); dispose: () => void; drawRect(rect: SkRect, paint: SkPaint): void; drawImage(image: SkImage, x: number, y: number, paint?: SkPaint): void; drawImageRect(img: SkImage, src: SkRect, dest: SkRect, paint: SkPaint, fastSample?: boolean): void; drawImageCubic(img: SkImage, left: number, top: number, B: number, C: number, paint?: SkPaint | null): void; drawImageOptions(img: SkImage, left: number, top: number, fm: FilterMode, mm: MipmapMode, paint?: SkPaint | null): void; drawImageNine(img: SkImage, center: SkRect, dest: SkRect, filter: FilterMode, paint?: SkPaint | null): void; drawImageRectCubic(img: SkImage, src: SkRect, dest: SkRect, B: number, C: number, paint?: SkPaint | null): void; drawImageRectOptions(img: SkImage, src: SkRect, dest: SkRect, fm: FilterMode, mm: MipmapMode, paint?: SkPaint | null): void; drawPaint(paint: SkPaint): void; drawLine(x0: number, y0: number, x1: number, y1: number, paint: SkPaint): void; drawCircle(cx: number, cy: number, radius: number, paint: SkPaint): void; drawVertices(verts: SkVertices, mode: BlendMode, paint: SkPaint): void; drawPatch(cubics: SkPoint[], colors?: SkColor[] | null, texs?: SkPoint[] | null, mode?: BlendMode | null, paint?: SkPaint): void; restoreToCount(saveCount: number): void; drawPoints(mode: PointMode, points: SkPoint[], paint: SkPaint): void; drawArc(oval: SkRect, startAngle: number, sweepAngle: number, useCenter: boolean, paint: SkPaint): void; drawRRect(rrect: SkRRect, paint: SkPaint): void; drawDRRect(outer: SkRRect, inner: SkRRect, paint: SkPaint): void; drawOval(oval: SkRect, paint: SkPaint): void; drawPath(path: SkPath, paint: SkPaint): void; drawText(str: string, x: number, y: number, paint: SkPaint, font: SkFont): void; drawTextBlob(blob: SkTextBlob, x: number, y: number, paint: SkPaint): void; drawGlyphs(glyphs: number[], positions: SkPoint[], x: number, y: number, font: SkFont, paint: SkPaint): void; drawSvg(_svgDom: SkSVG, _width?: number, _height?: number): void; save(): number; saveLayer(paint?: SkPaint, bounds?: SkRect | null, backdrop?: SkImageFilter | null, flags?: SaveLayerFlag): number; restore(): void; rotate(rotationInDegrees: number, rx: number, ry: number): void; scale(sx: number, sy: number): void; skew(sx: number, sy: number): void; translate(dx: number, dy: number): void; drawColor(color: SkColor, blendMode?: BlendMode): void; clear(color: SkColor): void; clipPath(path: SkPath, op: ClipOp, doAntiAlias: boolean): void; clipRect(rect: SkRect, op: ClipOp, doAntiAlias: boolean): void; clipRRect(rrect: SkRRect, op: ClipOp, doAntiAlias: boolean): void; concat(m: SkMatrix): void; drawPicture(skp: SkPicture): void; readPixels(srcX: number, srcY: number, imageInfo: ImageInfo): Float32Array | Uint8Array | null; }