UNPKG

vue-pincher

Version:
60 lines (59 loc) 1.75 kB
import type { Region } from "./crop"; export declare class ImageManipulator { private readonly _ctx; private _image; private _state; private _trimTo?; private _attention?; private readonly resizeObserver; private resetRequested; private clientWidth; private clientHeight; private canvasWidth; private canvasHeight; private fitWidth; private fitHeight; constructor(_ctx: CanvasRenderingContext2D, _image: ImageBitmap, _state: State, _trimTo?: Region | undefined, _attention?: Region[] | undefined); set image(value: ImageBitmap); set state(value: State); set attention(value: Region[]); set trimTo(value: Region | undefined); /** * Resets manipulator to default state. * @param lazy If true, the reset will be requested but not performed immediately. * This is useful for performance optimization when multiple manipulations are performed in a short time. * The reset will be performed on the next resize event. * If false, the reset will be performed immediately. */ reset(lazy?: boolean): void; manipulate(data: Manipulation): void; showRegion(region: Region, fillTarget?: boolean): void; getCurrentRegion(): { x: number; y: number; width: number; height: number; }; close(): void; redraw(): void; private adjustSize; } interface Manipulation { dAngle?: number; angle?: number; dScale?: number; scale?: number; dOffsetX?: number; offsetX?: number; dOffsetY?: number; offsetY?: number; centerX?: number; centerY?: number; } interface State { angle: number; offsetX: number; offsetY: number; scale: number; } export {};