UNPKG

vue3-sketch-ruler

Version:

> 是一个基于 Vue 3 + TypeScript 的标尺组件库,适用于低代码平台、大屏可视化、做图工具等场景,提供类似 Photoshop 的缩放与标尺辅助线体验。

49 lines 1.47 kB
import { Ref } from 'vue'; import { TransformEngine, TransformState, TransformEngineOptions } from '@sketch-ruler/core'; export interface CanvasTransformOptions { initialScale?: number; initialOffset?: { x: number; y: number; }; minZoom?: number; maxZoom?: number; enableAnimation?: boolean; animationMode?: TransformEngineOptions['animationMode']; dampingRatio?: number; naturalFrequency?: number; timeConstant?: number; autoCenter?: boolean; canvasSize?: { width: number; height: number; }; viewportSize?: { width: number; height: number; }; paddingRatio?: number; } export interface UseCanvasTransformReturn { scale: Ref<number>; offset: Ref<{ x: number; y: number; }>; engine: TransformEngine; setTransform: (t: Partial<TransformState>) => void; panBy: (dx: number, dy: number) => void; zoomBy: (dScale: number, originX: number, originY: number) => void; zoomTo: (scale: number, originX: number, originY: number) => void; toWorldPoint: (screenX: number, screenY: number) => { x: number; y: number; }; toScreenPoint: (worldX: number, worldY: number) => { x: number; y: number; }; reset: () => void; } export declare function useCanvasTransform(options?: CanvasTransformOptions): UseCanvasTransformReturn; //# sourceMappingURL=useCanvasTransform.d.ts.map