Skip to content

一个可以多人合作编辑和共享的在线黑板

Notifications You must be signed in to change notification settings

chen-mou/online_blackboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

online_blackboard

一个可以多人合作编辑和共享的在线黑板,提供添加画板和删除画板的功能,可以在画板上画出园,椭圆,三角等图形,可以双击已经画好的图形,通过右边的选择栏在可以编辑或者删除选中的图形,如果不小心操作失误,还可以点击撤销或者重做来补救,以上所有的操作都会实时同步到所有参与会议人员的屏幕上。良好的沟通是会议成功的起步,于是我们提供了在线文字聊天,你可以实时发送消息到会议中,或者私信一位参会人员。在会议结束后,如果想复盘,提供了按步的复原画板,让你无需再因为分神而错过细节。

项目亮点

  • 画板和文字聊天一体。
  • 使用原生 HTML5 Canvas 来实现画板。
  • 导入导出使用了特殊处理的 png 图片,画板的内容一目了然的同时,导入后还能编辑画板上的图形。
  • 采用 websocket 通信实现服务器主动推送消息到客户端,当用户操做白板时会实时发送消息同步到参会人员的同一白板上,并采用 rabbitmq 用作消息代理,就算消息发送到不同的服务器上也可以同步到 各个客户端上

系统架构

sysem

储存架构

DB

分工

项目采用前后端分离,由资宇航,陈征进行前端编写,陈桢梁编写后台程序与项目部署。

资宇航:采用原生canvans实现各个图形的绘画并封装为api,与画布ui的实现

陈征:与后端交互实现各个接口的消息解析以及页面渲染,以及聊天登录等页面的实现

陈桢梁:编写后端代码实现项目所需各个功能接口与服务器部署。

项目部署

详情请见各程序文件夹下readme文件