1.公司要开发一款云白板软件,需要支持安卓(大屏) WEB端(手机&电脑) 实现多端互联,可用于教育及多人会议协同。
点击空白处退出提示
1.公司要开发一款云白板软件,需要支持安卓(大屏) WEB端(手机&电脑) 实现多端互联,可用于教育及多人会议协同。
该项目为联想智慧白板项目web端的开发,主要使用原生canvas技术实现画布内容,dom实现操作栏功能,该项目共有一下核心模块
1.绘制模式,用户可以自由编写任意内容(甚至画画)。
2.观察模式,画布为无限大,用户可以四面八方拖动与放大缩小画布功能。
3.操作模式,用户可以选中某些绘制笔触以及图形或图片视频等一切操作内容,随意拖动圈选更多大批量删除、拖动、缩放、旋转、翻转等复杂操作。
4.线条插入,插入一根线条。
5.图形插入,可以加入2D 3D预制图形,通常在教学场景会用到,三角形,长方形,正方形,锥形,五角星等,亦有3D相关图形。
6.图片插入、视频插入,顾名思义可插入视频与图片,期间设计到媒体转换等技术实现,将视频图片动态绘入canvas中。
7.时间回溯,该功能可以实现上一步或下一步动态回溯至之前所有用户的操作流程。
8.其他收起展开操作栏等技术实现.
ps.该项目使用websocket与安卓端互通实现多用户端互联,可同时由多个用户同时操作,使用websocket的快速响应实现多端瞬间互联并通过轮询同步方式解决多端数据同步问题。
我个人实现web端全部任务,亮点比如多人协同回溯问题,绘制内容旋转缩放删除翻转等复杂物理算法,各种内容插入,如视频,图片等,删除后性能回收等机制,包括橡皮擦擦除后产生新数据等复杂操作
ps.因签过保密协议,下面图片仅能展示部分



评论