javascript - 使用 KonvaJs 在 Canvas 中自定义输入范围

标签 javascript html canvas konvajs

出于某些目的,我需要 Canvas 中的输入类型范围,我需要使用它来更改字体大小。我已经制作了形状并且还可以拖动,但是圆形 Controller 超出了线。

只需预览垃圾箱即可了解我的意思。 Jsbin

我只想像输入范围一样将拖动区域限制在直线上。

这是 documentation KonvaJs 库。

最佳答案

这是有效的,由 Lavrton 编码

Source

var width = window.innerWidth;
    var height = window.innerHeight;

    var stage = new Konva.Stage({
      container: 'container',
      width: width,
      height: height
    });

    var layer = new Konva.Layer();

 var Track = new Konva.Line({
            x: 44,
            y: 55,
            points: [60, 0, 0, 0, 0, 0, 0, 0],
            stroke: '#BDC3C7',
            strokeWidth: 6,
            visible: true,
            name: 'TrackLine',
            lineCap: 'sqare',
            lineJoin: 'sqare'
          });

    var TrackBall = new Konva.Circle({
            x: 44,
            y: 55,
            stroke: '#D35400',
            fill: '#ddd',
            strokeWidth: 2,
            name: 'TrackControl',
            radius: 8,
            draggable: true,
            dragOnTop: false,
            visible: true,
            dragBoundFunc: function(pos) {
              console.log(pos.x, Math.min(44, pos.x))
            return {
                x: Math.min(104, Math.max(44, pos.x)),
                y: this.getAbsolutePosition().y
                };
            }
     });

layer.add(Track);
layer.add(TrackBall);

stage.add(layer);
<script src="https://cdn.rawgit.com/konvajs/konva/0.10.0/konva.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
  <div id="container" class="CanCont"></div>

关于javascript - 使用 KonvaJs 在 Canvas 中自定义输入范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35145736/

相关文章:

javascript - 在 ES6 中将值存储在 Map 中的回调函数

简单 Java 程序的 Javascript 包装器

javascript - 选择伪元素 :focus and :active via JS

javascript - 如何发布ajax数据而不是标准表单数据

javascript - 触发事件时不打印图像

google-chrome - Canvas 上的 CORS 不适用于 Chrome 和 Safari

javascript - 通过 promise 链传递结果无法访问?

javascript - TypeScript 扩展类,行为不符合逻辑

javascript - 如何将 Content-Security-Policy 与本地主机文件一起使用

javascript - 计算 Canvas 中线与圆的交点坐标和线的度数