reactjs - react-konva dragBound 一个可缩放的舞台
问题描述
我正在尝试使用 react-konva 制作一个应用程序,其中图像覆盖整个舞台,并且舞台是可拖动和可缩放的。所以我正在寻找一种将拖动绑定到图像边缘的方法。
我查看了这个演示并在我的代码中添加了一个dragBoundFunc,但是使用此代码我只能在顶部和左侧边缘拖动绑定我的舞台。
解决方案
这可能有效:
const { stageWidth, stageHeight, stageScale } = this.state;
const x = Math.min(0, Math.max(pos.x, stageWidth * (1 - stageScale)));
const y = Math.min(0, Math.max(pos.y, stageHeight* (1 - stageScale)));
return {
x, y
};
此外,您可能需要更新缩放功能以调用绑定功能。
演示:https ://codesandbox.io/s/react-konva-dragbound-for-stage-ne71c?file=/src/Demo.jsx
推荐阅读
- r - 对数据框的多列进行分位数排名并改变结果
- javascript - gulpfile 错误接收了一个非乙烯基对象
- tensorflow - 如何在没有源代码的情况下修改预训练的 tensorflow 模型?
- css - 将浮动 div 对齐到中心但最后不是向左整行
- google-dl-platform - 如何创建预装了 tensorflow 或 pytorch 的 GPU VM?
- wordpress - Nginx/.htacces 重定向无法正常工作
- java - 首次安装时出现 LibGdx 错误
- python - 如何访问 tf.data.Dataset.list_files() 收集的文件名?
- r - R中带有面板数据的空间回归
- java - Java可以直接在硬件上运行吗?