Fabric.js ActiveSelection 需要自己的缓存(cache)方法
在本文中,我们将看到如何使用 needsItsOwnCache() 方法来填充 canvas ActiveSelection 中的对象,该方法用于填充一个对象。Canvas ActiveSelection 意味着 ActiveSelection 可以根据要求进行移动和拉伸。此外,当涉及初始描边颜色、高度、宽度、填充颜色或描边宽度时,ActiveSelection 可以进行自定义设置。
needsItsOwnCache() 方法如果对象需要自己的缓存则返回 true。
方法 : 首先导入 fabric.js 库。在导入库之后,在 body 标签中创建一个包含 ActiveSelection 的画布块。之后,初始化 Fabric.JS 提供的 Canvas 和 ActiveSelection 类的实例,并使用 needsItsOwnCache() 方法。
语法:
ActiveSelection.needsItsOwnCache()
参数: 此函数不接受任何参数。
返回值: 此方法返回返回 true 的对象值,如果对象有自己的缓存。
示例: 此示例使用 FabricJS 来设置画布 ActiveSelection 的 needsItsOwnCache() 方法,如下所示。
<!DOCTYPE html>
<html>
<head>
<!-- FabricJS CDN -->
<script src=
"https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js">
</script>
</head>
<body>
<div style="text-align: center;width: 400px;">
<h1 style="color: green;">
GeeksforGeeks
</h1>
<b>
Fabric.js | ActiveSelection needsItsOwnCache() method
</b>
</div>
<div style="text-align: center;">
<canvas id="canvas" width="500" height="500"
style="border:1px solid green;">
</canvas>
</div>
<img src=
"https://media.geeksforgeeks.org/wp-content/uploads/20200327230544/g4gicon.png"
width="100" height="100" id="my-image"
style="display: none;">
<script>
var canvas = new fabric.Canvas("canvas");
// Getting the image
var img = document.getElementById('my-image');
// Creating the image instance
var geek = new fabric.Image(img, {
});
canvas.add(geek);
var geek = new fabric.IText('GeeksforGeeks', {
});
canvas.add(geek);
canvas.centerObject(geek);
var gfg = new fabric.ActiveSelection(canvas.getObjects(), {
});
canvas.setActiveObject(gfg);
canvas.requestRenderAll();
canvas.centerObject(gfg);
console.log(gfg.needsItsOwnCache())
</script>
</body>
</html>
输出:
参考: http://fabricjs.com/docs/fabric.ActiveSelection.html#needsItsOwnCache