【问题标题】:canvas not selectable on all area in starting在启动时的所有区域都无法选择画布
【发布时间】:2015-01-17 22:43:15
【问题描述】:

http://liveweave.com/CQJDKc

当您单击图像的后部时,即带有女孩和男孩的图像,您将无法拖动或选择画布组,但是当您单击太阳部分时,画布是可选择的并且可以拖动。

但是一旦你选择了画布元素并拖动它,整个画布就变成了可选择的,为什么这么严重的问题无法弄清楚??..

fabric.Image.fromURL('http://www.gettyimages.com/CMS/Pages/ImageCollection/StaticContent/image1_%20164248809.jpg', function (img) {
        var img1 = img.set({
            left: 0,
            top: 0
        });
        fabric.Image.fromURL('http://upload.wikimedia.org/wikipedia/commons/c/c3/Aurora_as_seen_by_IMAGE.PNG', function (img) {
            var img2 = img.set({
                left: 0,
                top: 0
            });
            group = new fabric.Group([img1, img2], {
                left: 0,
                top: 0,
                originX: 'center',
                originY: 'center'
            });
            canvas.add(group);
            group.center();
            //group.hasRotatingPoint=true;
            //group.lockMovementX = group.lockMovementY = true;
            group.lockUniScaling = true;
            group.hasBorders = group.hasControls= false;
            //group.selectable = false;
            canvas.renderAll();
        });
    });

【问题讨论】:

    标签: javascript jquery html canvas fabricjs


    【解决方案1】:

    我不确定这是否确实导致了您的问题,但我认为您的问题只是因为您将组定位到中心,并且画布不能很好地呈现它。

    将组定位到中心后从画布中删除,然后再次将组添加到画布可以解决您的问题。 这是演示http://liveweave.com/lcCAFH

     canvas.add(group);
                    group.center();
                  canvas.remove(group);
                  canvas.add(group);
    

    希望对你有帮助

    【讨论】:

    • 不需要这样做,我只是添加了 group.scale(1);它工作正常,请参阅liveweave.com/A5RljT 为什么会这样??..center() 的一些问题??
    • 为什么 scale, group 已经定义了,你可以随时删除或添加组,为什么要进行复杂的scale(1) 操作却没有结果,你能告诉我为什么 scale(1) 有效。
    • 我不知道为什么画布在 group.center() 之后没有被渲染;
    • 根据我的说法,即使你可以用 scale(1) 解决问题,你也不应该这样做,你可以坚持我的解决方案直到找到问题的原因,这只是因为添加并且删除组并不像扩展那样繁重的任务。最后由你决定
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-09
    • 1970-01-01
    • 2012-08-04
    • 1970-01-01
    • 2018-07-12
    • 2017-11-16
    相关资源
    最近更新 更多