问题已修复:刻度尺现在会随缩放和平移正确更新位置。
关键修改:
1. 在 generateTicks 函数中增加了偏移量计算:const visibleStart = -offset / currentScale
generateTicks
const visibleStart = -offset / currentScale
2. 使用公式 (pos - visibleStart) * currentScale 计算刻度位置
(pos - visibleStart) * currentScale
3. 只生成可见范围内的刻度以提高性能
使用鼠标滚轮在内容区域缩放,观察刻度尺变化。