繁体   English   中英

使用固定的第一列平移+缩放HTML5画布网格

[英]Pan + Zoom HTML5 canvas grid with pinned first column

我想用固定的第一列创建一个HTML5画布网格(MS Excel有类似的选项)。 到目前为止,我已经能够创建以下内容: http//jsfiddle.net/dobbylan/AbnpE/

我已根据Phrogz的帖子添加了Pan + Zoom功能: Zoom Canvas to Mouse Cursor

但是我在平移+缩放和固定列时遇到以下困难:

  • 我想防止将画布向右平移到第一列,即第一列最多可以位于左边界。 (同样适用于上边框并向下平移)
  • 缩放时,缩放第一列时出现问题,我无法修复

有人可以帮我解决这个问题吗?

检查这个小提琴:

http://jsfiddle.net/U8BE5/1/

它应该为您提供有关如何处理边界条件(也包括缩放)的一些想法。

我不确定你为什么选择使用两个画布而不使用jQuery,这可能造成的伤害大于好处。

边界的相关代码:

if (gX > 0) gX = 0;
if (gX < canvas.width - gW * gScale) gX = canvas.width - gW * gScale;
if (gY > 0) gY = 0;
if (gY < canvas.height - gH * gScale) gY = canvas.height - gH * gScale;

查看我在小提琴中的一般方法,看看你是否想要稍微改变你的策略。

说实话,我无法遵循你的一些代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM