繁体   English   中英

Kinetic.JS图像在使用像素检测后无法拖动

[英]Kinetic.JS Image Unable to Drag After Using Pixel Detection

我正在使用Kinetic.JS库开发HTML5应用。 我使用Kinetic.Image加载图像( .PNG格式),并使用像素检测仅检测图像的非透明部分。 问题是尽管我将draggable属性设置为true并使用saveImageData方法,但我仍无法正确拖动图像。 图像被拖到很远之前(使用path检测)。 有解决方案的人吗? 这是我的代码:

   var beeObj = new Image();
        beeObj.onload = function(){ 
            bee = new Kinetic.Image({ //bee is global variable
            x: 325 - 45,
            y: 145 - 83,
            image: beeObj,          
            draggable: true         
        });
        lineLayer.add(bee); 
        lineLayer.draw();
        bee.saveImageData();
   };
   beeObj.src = directory + "smile_bee.png";

图像加载器内部没有DetectionType。它应该类似于

bee = new Kinetic.Image({ //bee is global variable
        x: 325 - 45,
        y: 145 - 83,
        image: beeObj,          
        draggable: true,
        DetectionType: 'Pixels'         
    });

并且在鼠标移出时,您可以使用相同的功能,即

bee.saveImageData();

并且以相同的功能结束整个onload函数,那么它将起作用

现在,埃里克(Eric)已发布v4 +,因此现在没有像素检测类型

您可以使用类似

    image.createImageBuffer();

//清除图像缓冲区

     image.clearImageBuffer();

希望这会..

问候

暂无
暂无

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

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