UNPKG

js-web-screen-shot

Version:

web端自定义截屏插件(原生JS版)

55 lines (54 loc) 1.31 kB
import type { CropBoxBorderOption, CropBoxBorderStyleIndex } from "../../../lib/constants/cropBoxOptions"; export type SelectionBorderNode = { x: number; y: number; width: number; height: number; index: CropBoxBorderStyleIndex; option: CropBoxBorderOption; }; export type BorderContext = { startX: number; startY: number; width: number; height: number; endX: number; endY: number; centerX: number; centerY: number; halfBorderSize: number; innerWidth: number; innerHeight: number; borderSize: number; }; export type BorderTemplate = { option: CropBoxBorderOption; index: CropBoxBorderStyleIndex; x: (ctx: BorderContext) => number; y: (ctx: BorderContext) => number; width: (ctx: BorderContext) => number; height: (ctx: BorderContext) => number; }; export type DragStartPosition = { moveStartX: number; moveStartY: number; }; export type CropBoxBounds = { startX: number; startY: number; width: number; height: number; }; export type CropBoxResizeState = { tempStartX: number; tempStartY: number; tempWidth: number; tempHeight: number; }; export type CropBoxRenderBounds = CropBoxBounds; export type CropBoxPreset = { x: number; y: number; w: number; h: number; };