Skip to main content

HTML5 Canvas 停止形状变换

如果你需要立即停止变换,可以使用 Konva.Transformer 实例的 stopTransform 方法。

说明::尝试调整形状的大小。如果宽度大于200,将会停止变换。

import Konva from 'konva';

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

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

const layer = new Konva.Layer();  
stage.add(layer);

const rect = new Konva.Rect({  
  x: 50,  
  y: 50,  
  width: 100,  
  height: 100,  
  fill: 'yellow',  
  stroke: 'black',  
  draggable: true,  
});  
layer.add(rect);

const tr = new Konva.Transformer({  
  nodes: [rect],  
});  
layer.add(tr);

rect.on('transform', function () {  
  const width = rect.width() * rect.scaleX();  
  if (width > 200) {  
    tr.stopTransform();  
  }  
});