@nativescript-community/ui-htmlcanvasapi
Version:
An HTML Canvas API implementation on top of android and iOS native APIs
139 lines (138 loc) • 6.73 kB
TypeScript
import { Canvas } from '@nativescript-community/ui-canvas';
import { ImageSource } from '@nativescript/core';
import { CanvasCompositeOperation, FillRule, FontKerning, FontStretch, FontVariantCaps, ImageSmoothingQuality, LineCap, LineJoin, PatternRepetition, TextAlignment, TextBaseline, TextDirection, TextRendering } from '../../CanvasTypes';
import { CanvasGradient } from '../CanvasGradient';
import { CanvasPattern } from '../CanvasPattern';
import { DOMMatrix } from '../DOMMatrix';
import { Path2D } from '../Path2D';
import { TextMetrics } from '../TextMetrics';
import type { HTMLCanvasElement } from '../elements/HTMLCanvasElement';
import type { OffscreenCanvas } from '../elements/OffscreenCanvas';
declare abstract class AbstractCanvasRenderingContext2D {
/**
* Not implemented
*/
filter: any;
imageSmoothingQuality: ImageSmoothingQuality;
fontKerning: FontKerning;
fontStretch: FontStretch;
fontVariantCaps: FontVariantCaps;
textRendering: TextRendering;
wordSpacing: string;
readonly canvas: HTMLCanvasElement | OffscreenCanvas;
private _path;
private _stylePaint;
private _font;
private _letterSpacing;
private _restorableProps;
private _savedStates;
private _blendModeRestoreCount;
private readonly _clearPaint;
constructor();
private _saveState;
private _applyStyleDefaults;
private _getTextBaseLineHeight;
private _createNativeShader;
private _updateShadowLayer;
private get _domMatrix();
private set _domMatrix(value);
isContextLost(): boolean;
get nativeContext(): Canvas;
getContextAttributes(): any;
isPointInPath(x: number, y: number): boolean;
isPointInPath(x: number, y: number, fillRule: FillRule): boolean;
isPointInPath(path: Path2D, x: number, y: number): boolean;
isPointInPath(path: Path2D, x: number, y: number, fillRule: FillRule): boolean;
isPointInStroke(x: number, y: number): boolean;
isPointInStroke(path: Path2D, x: number, y: number): boolean;
createConicGradient(startAngle: number, x: number, y: number): any;
createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
createPattern(image: ImageSource | any, repetition: PatternRepetition): CanvasPattern;
createImageData(width: number, height: number): any;
createImageData(width: number, height: number, settings: any): any;
createImageData(imagedata: any): any;
getImageData(sx: number, sy: number, sw: number, sh: number, settings: any): any;
putImageData(imageData: any, dx: number, dy: number, dirtyX?: number, dirtyY?: number, dirtyWidth?: number, dirtyHeight?: number): any;
beginPath(): void;
closePath(): void;
moveTo(x: number, y: number): void;
lineTo(x: number, y: number): void;
rect(x: number, y: number, width: number, height: number): void;
roundRect(x: number, y: number, width: number, height: number, radii: number | number[]): void;
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
clearRect(x: number, y: number, width: number, height: number): void;
fillRect(x: number, y: number, width: number, height: number): void;
fillText(text: string, x: number, y: number, maxWidth?: number): void;
strokeRect(x: number, y: number, width: number, height: number): void;
strokeText(text: string, x: number, y: number, maxWidth?: number): void;
fill(): void;
fill(path: Path2D): void;
fill(fillRule: FillRule): void;
fill(path: Path2D, fillRule: FillRule): void;
clip(): void;
clip(path: Path2D): void;
clip(fillRule: FillRule): void;
clip(path: Path2D, fillRule: FillRule): void;
drawImage(image: ImageSource | any, dx: number, dy: number): any;
drawImage(image: ImageSource | any, dx: number, dy: number, dWidth: number, dHeight: number): any;
drawImage(image: ImageSource | any, sx: number, sy: number, sWidth: number, sHeight: number, dx: number, dy: number, dWidth: number, dHeight: number): any;
measureText(text: string): TextMetrics;
scale(x: number, y: number): void;
translate(x: number, y: number): void;
rotate(angle: number): void;
stroke(path?: Path2D): void;
save(): void;
restore(): void;
reset(): void;
transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
resetTransform(): void;
setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
setTransform(matrix: DOMMatrix): void;
getTransform(): DOMMatrix | any;
getLineDash(): number[];
setLineDash(segments: number[]): void;
get strokeStyle(): string | CanvasGradient | CanvasPattern;
set strokeStyle(val: string | CanvasGradient | CanvasPattern);
get fillStyle(): string | CanvasGradient | CanvasPattern;
set fillStyle(val: string | CanvasGradient | CanvasPattern);
get globalAlpha(): number;
set globalAlpha(val: number);
get lineWidth(): number;
set lineWidth(val: number);
get lineCap(): LineCap;
set lineCap(val: LineCap);
get lineJoin(): LineJoin;
set lineJoin(val: LineJoin);
get miterLimit(): number;
set miterLimit(val: number);
get lineDashOffset(): number;
set lineDashOffset(val: number);
get shadowOffsetX(): number;
set shadowOffsetX(val: number);
get shadowOffsetY(): number;
set shadowOffsetY(val: number);
get shadowBlur(): number;
set shadowBlur(val: number);
get shadowColor(): string;
set shadowColor(val: string);
get globalCompositeOperation(): CanvasCompositeOperation;
set globalCompositeOperation(val: CanvasCompositeOperation);
get font(): string;
set font(val: string);
get textAlign(): TextAlignment;
set textAlign(val: TextAlignment);
get textBaseline(): TextBaseline;
set textBaseline(val: TextBaseline);
get direction(): TextDirection;
set direction(val: TextDirection);
get imageSmoothingEnabled(): boolean;
set imageSmoothingEnabled(val: boolean);
get letterSpacing(): string;
set letterSpacing(val: string);
}
export { AbstractCanvasRenderingContext2D };