我有一个我想要制作的节目的概念。我想制作某种绘图程序,允许您在页面上绘制线条,保存它,然后当另一个用户查看同一页面时,他可以看到第一个用户制作的绘图并编辑它。这将全部在线,大概是使用HTML5画布。
我想我可以弄清楚绘图部分没问题:当点击用户的鼠标时,程序将基本上填充一系列跟踪鼠标移动的圆圈。但是,我很难搞清楚如何坚持图纸。我现在能想到的最好的解决方案是绘制图纸的“快照”并以某种格式保存,但随着图纸变大,这意味着有一个巨大的文件被保存并从服务器发送到客户端,听起来很不理想。
有人可以提供有关如何有效保存和保存这些图纸的建议吗?
答案 0 :(得分:0)
HTML5像素数据可以轻松导出和导入为PNG图像。像素数据大小仅取决于尺寸,而不是应用了多少个绘图命令,因为它是基于位图缓冲区,而不是基于矢量。
使用toDataURL()导出:
Capture HTML Canvas as gif/jpg/png/pdf?
将数据保存到服务器。
导入现有图片,只需将其加载为<img>
,然后使用<canvas>
在drawImage()
上绘制图片。