首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Fabric.js图像模糊

Fabric.js图像模糊
EN

Stack Overflow用户
提问于 2015-05-30 18:04:33
回答 1查看 3K关注 0票数 0

我使用Fabric.js和jQuery UI作为拖放场景创建者。当我拖放一个图像到画布中时,图像变得模糊/像素化,并显示为放大。我一直在搜索Stackoverflow和Google,但是找不到任何解决方案。我很感激你对如何解决它的任何建议!

这是我的代码:

代码语言:javascript
运行
复制
// HTML

<canvas id="scene"></canvas>

// Draggable setup

$('.scene-item').draggable({
    helper: 'clone',
    appendTo: 'body',
    containment: 'window',
    scroll: false,
    zIndex: 9999
});

// Drop Setup

var canvas = new fabric.Canvas('scene');

canvas.setDimensions({
    width: '800px',
    height: '500px'
}, {
    cssOnly: true
});
document.getElementById("scene").fabric = canvas;

canvas.on({
    'object:moving': function(e) {
        e.target.opacity = 0.5;
    },
    "object:modified": function(e) {
        e.target.opacity = 1;
    }
});


$('#scene').droppable({
    drop: function(e, ui) {
        if ($(e.target).attr('id') === 'scene') {
            var pointer = canvas.getPointer();
            fabric.Image.fromURL(ui.draggable[0].currentSrc, function (img) {
                console.log(img);
                img.set({
                    left: pointer.x - 20,
                    top: pointer.y - 20,
                    width: 52,
                    height: 52,
                    scale: 0.1
                });
                //canvas.clear();
                canvas.add(img);
                canvas.renderAll();
            });
        }
    }

});

这就是画布上和画布上图像的样子:

下面是一个演示jsfiddle.net/dmLr6cgx/1

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-30 18:31:51

我解决了问题。我不得不替换:

代码语言:javascript
运行
复制
canvas.setDimensions({
        width: '800px',
        height: '500px'
    }, {
        cssOnly: true
    });

使用

代码语言:javascript
运行
复制
canvas.setHeight(500);
canvas.setWidth(800);
canvas.renderAll();

现在效果很好。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30549556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档