javascript 在由html2canvas生成的画布上绘制

6ovsh4lw  于 2022-12-25  发布在  Java
关注(0)|答案(1)|浏览(172)

我需要使用html2canvas的画布作为一个普通的画布,并在上面画一个矩形,但我似乎不能让它工作。

html2canvas(document.getElementById('example-element'), {backgroundColor: null, scale: canvasScale,}).then(function(canvas) {       
        document.body.appendChild(canvas);
        let ctx = canvas.getContext('2d');
        ctx.fillStyle = '#000000';
        ctx.fillRect(0, 0, 100, 100);
    });

我希望出现一个填充的矩形,但是画布中什么也没有发生。

4xrmg8kj

4xrmg8kj1#

这可能是工作,但您的绘图是小康画布或开始剪辑,由于修改遮罩/转换设置从html 2canvas。
重置上下文的转换可能会修复它:

html2canvas(document.getElementById('example-element'), {backgroundColor: null, scale: canvasScale,}).then(function(canvas) {       
        document.body.appendChild(canvas);
        let ctx = canvas.getContext('2d');
        ctx.resetTransform(); // <---- this line is what you need
        ctx.fillStyle = '#000000';
        ctx.fillRect(0, 0, 100, 100);
    });

相关问题