接入预览画布加减快捷缩放
复用工具栏中心缩放逻辑并统一加减倍率常量 为预览画布增加悬停与键盘焦点作用域 保留既有适配画布和实际尺寸快捷键行为
This commit is contained in:
@@ -4,6 +4,8 @@ export const CANVAS_WORLD_SIZE = 12000;
|
||||
export const CANVAS_WORLD_ORIGIN = CANVAS_WORLD_SIZE / 2;
|
||||
export const MIN_SCALE = 0.025;
|
||||
export const MAX_SCALE = 3.2;
|
||||
export const CANVAS_ZOOM_IN_FACTOR = 1.16;
|
||||
export const CANVAS_ZOOM_OUT_FACTOR = 0.86;
|
||||
export const CANVAS_DISPLAY_SCALE_BASE = 0.5;
|
||||
export const DEFAULT_CANVAS_SIZE = { width: 900, height: 640 };
|
||||
export const FIT_VIEW_PADDING = 10;
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import {
|
||||
CANVAS_ZOOM_IN_FACTOR,
|
||||
CANVAS_ZOOM_OUT_FACTOR,
|
||||
canvasDisplayScaleToViewportScale,
|
||||
type CanvasViewport,
|
||||
formatCanvasDisplayScalePercent,
|
||||
@@ -27,8 +29,8 @@ export function ZoomControls({
|
||||
const actions: CanvasZoomActions = {
|
||||
displayPercent: formatCanvasDisplayScalePercent(viewport.scale),
|
||||
fit: onFit,
|
||||
zoomIn: () => onScaleFromCenter(viewport.scale * 1.16),
|
||||
zoomOut: () => onScaleFromCenter(viewport.scale * 0.86),
|
||||
zoomIn: () => onScaleFromCenter(viewport.scale * CANVAS_ZOOM_IN_FACTOR),
|
||||
zoomOut: () => onScaleFromCenter(viewport.scale * CANVAS_ZOOM_OUT_FACTOR),
|
||||
zoomToDisplayScale: (displayScale) =>
|
||||
onScaleFromCenter(canvasDisplayScaleToViewportScale(displayScale)),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user