如何将 canvas 导出为 JSON?
要使用 Konva 将舞台保存为 JSON 字符串,我们可以使用 toJSON()
方法,该方法将 Konva 节点树序列化为可以保存到 Web 存储或离线数据库的文本。我们还可以序列化其他节点,包括图层、组和形状。
toJSON()
方法无法保存滤镜、图像和事件监听器。因此它只适用于非常小的应用。对于更复杂的情况,请阅读 最佳实践
Konva 保存舞台演示view raw<!DOCTYPE html> <html> <head> <script src="https://unpkg.com/konva@9.3.18/konva.min.js"></script> <meta charset="utf-8" /> <title>Konva Save Stage Demo</title> <style> body { margin: 0; padding: 0; overflow: hidden; background-color: #f0f0f0; } </style> </head> <body> <div id="container"></div> <script> var width = window.innerWidth; var height = window.innerHeight;
var stage = new Konva.Stage({ container: 'container', width: width, height: height, });
var layer = new Konva.Layer();
var hexagon = new Konva.RegularPolygon({ x: width / 2, y: height / 2, sides: 6, radius: 70, fill: 'red', stroke: 'black', strokeWidth: 4, });
layer.add(hexagon);
stage.add(layer);
var json = stage.toJSON();
console.log(json); </script> </body> </html>
|