javascript - Fabricjs 路径在鼠标松开之前不会呈现

标签 javascript fabricjs requestanimationframe

创建 spritesheet 图像并将其动画化为 fabricjs 后(1.5)canvas通过调用

(function render() {
  self.fabricCanvas.renderAll();
  fabric.util.requestAnimFrame(render);
})();

当尝试freeDraw新时 paths这些仅在 onmouseup 上呈现。

这是为什么?我该如何解决? 谢谢。

最佳答案

您不清楚您使用的fabricjs是什么版本。

renderAll 函数正在清理发生绘制的 upperCanvas 层。

当您释放鼠标按钮时,将创建一条路径并将其像其他对象一样添加到 Canvas 中。从那一刻起,renderAll 也将渲染您新创建的路径,而在此之前它只是清除您正在绘制它的表面。

在fabricjs的问题跟踪器上有相同行为的通知

https://github.com/kangax/fabric.js/issues/2723

修复:

https://github.com/kangax/fabric.js/pull/2895

关于javascript - Fabricjs 路径在鼠标松开之前不会呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36604335/

相关文章:

angularjs - 在 Angular 应用程序中使用 $$rAF

animation - 一段时间后 Fabric JS 动画滞后

java - 单击 jsp 页面上的链接打开文件

javascript - iOS 12 上的麦克风访问 FIrefox 和 Chrome

javascript - 在下面的代码中,在 Fabric.js 中单击鼠标时 Canvas 层消失,并且 Firefox 在创建 Canvas 到图像时停止响应?

typescript - 如何为 fabric 安装 .d.ts

javascript - Fabric JS - 将对象发送到后台

html - setTimeout 或 setInterval 或 requestAnimationFrame

javascript - 将字符串转换为表达式

javascript - React Native Redux - 如何更新数组中的项目?