vue3-sketch-ruler
Version:
> 是一个基于 Vue 3 + TypeScript 的标尺组件库,适用于低代码平台、大屏可视化、做图工具等场景,提供类似 Photoshop 的缩放与标尺辅助线体验。
48 lines (42 loc) • 1.65 kB
text/typescript
// 新架构组件
import SketchRuler from './components/SketchRuler.vue'
import Minimap from './components/Minimap.vue'
// 类型导出
export type { SketchRulerProps } from './components/SketchRuler.vue'
export type {
CanvasTransformOptions,
UseCanvasTransformReturn
} from './composables/useCanvasTransform'
export type { RulerScaleOptions } from './composables/useRulerScale'
export type { SnapTarget, SnapResult, SnapOptions } from './composables/useSnapDetection'
export type { RulerContext } from './state/ruler-context'
export type { CanvasConfig, CanvasState, CanvasTemplate } from '@sketch-ruler/core'
// 从 @sketch-ruler/core 重新导出核心类型(保持向后兼容)
export type {
TransformState,
TransformEngineOptions,
ScaleMark,
TickConfig,
GuideLine,
RulerPalette,
SnapConfig,
SketchRulerPlugin,
RulerRenderer,
RulerState,
RulerAction,
ZoomMode
} from '@sketch-ruler/core'
// 核心 API 导出(从 @sketch-ruler/core 透传)
export { TransformEngine } from '@sketch-ruler/core'
export { produceState, createDefaultState, PluginManager } from '@sketch-ruler/core'
// Vue 层 API 导出
export { useCanvasTransform } from './composables/useCanvasTransform'
export { useRulerScale, getTickConfig } from './composables/useRulerScale'
export { useSnapDetection } from './composables/useSnapDetection'
export { RulerContextKey } from './state/ruler-context'
export { InputManager } from '@sketch-ruler/canvas'
export { CanvasManager, BUILTIN_TEMPLATES } from '@sketch-ruler/core'
export { definePlugin } from './plugins'
// 组件导出
export { SketchRuler, Minimap }
export default SketchRuler