socket.io 和canvas 实现的共享画板功能


Posted in HTML / CSS onMay 22, 2019

起初只是想要写个简单的画板,后面不知不觉的想起石墨文档有一个白板功能,就想将当前这个画布功能,开发成一个简易版的协作画板。

在线演示:努力部署中,目前需要clone到本地运行。

git 地址

2、运行
 

git clone <repository>
npm install
#>>>对于开发阶段:
#前端服务启动(利用webpack dev server):
npm run dev
#后台服务启动(使用了nodemon 实时监听后端文件修改重启服务)
npm run start
#>>>对于生产阶段:
#打包前端文件,然后启动服务器即可
1、 npm run build
2、 npm run start

3、功能:

开发完成:
•画布缩放(Done)
•画布颜色(Done)
•画笔颜色(Done)
•画笔粗细(Done)
•历史记录(撤销,恢复)(Done)
•聊天室(Done)
•绘制协作(类似于石墨文档协作)(Done)

待开发的功能:

•UI 界面美化(待开发) •打算使用UI库(material Design)

•文字控件(待开发)
•上传图片,基于图片绘图(待开发)
•绘图带基本形状可拖拽调控大小 (待开发)
• 聊天功能丰富(表情,图片,音视频)(待开发) •webRTC 获取视频流数据,并传输

•其它未知功能(x)

4、效果图

socket.io 和canvas 实现的共享画板功能

socket.io 和canvas 实现的共享画板功能 

5、后话

这个应用实现的比较基础,还有很大的改进空间。

以上所述是小编给大家介绍的socket.io 和canvas 实现的共享画板功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

HTML / CSS 相关文章推荐
表单button的outline在firefox浏览器下的问题
Dec 24 HTML / CSS
纯css3实现的动画按钮的实例教程
Nov 17 HTML / CSS
浅析rem和em和px vh vw和% 移动端长度单位
Apr 28 HTML / CSS
用React加CSS3实现微信拆红包动画效果
Mar 13 HTML / CSS
HTML5 新事件 小结
Jul 16 HTML / CSS
HTML5 Canvas draw方法制作动画效果示例
Jul 11 HTML / CSS
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
Jul 19 HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
May 07 HTML / CSS
基于HTML5 WebGL的3D机房的示例
Mar 16 HTML / CSS
Html5踩坑记之mandMobile使用小记
Apr 02 HTML / CSS
纯CSS实现酷炫的霓虹灯效果
Apr 13 HTML / CSS
使用CSS实现小三角边框原理解析
Nov 07 HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
May 27 #HTML / CSS
利用canvas实现图片下载功能来实现浏览器兼容问题
May 31 #HTML / CSS
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
Jun 03 #HTML / CSS
详解利用canvas实现环形进度条的方法
Jun 12 #HTML / CSS
Html5 实现微信分享及自定义内容的流程
Aug 20 #HTML / CSS
前端canvas动画如何转成mp4视频的方法
Jun 17 #HTML / CSS
详解FireFox下Canvas使用图像合成绘制SVG的Bug
Jul 10 #HTML / CSS
You might like
PHP开发负载均衡指南
2010/07/17 PHP
Php中文件下载功能实现超详细流程分析
2012/06/13 PHP
PHP标准类(stdclass)用法示例
2016/09/28 PHP
中国地区三级联动下拉菜单效果分析
2012/11/15 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
javascript弹出窗口实现代码
2015/11/12 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
ES6的新特性概览
2016/03/10 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
jquery实现文本框的禁用和启用
2016/12/07 Javascript
使用Bootstrap打造特色进度条效果
2017/05/02 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
使用D3.js构建实时图形的示例代码
2018/08/28 Javascript
vue实现的多页面项目如何优化打包的步骤详解
2020/07/19 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
[59:42]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python访问纯真IP数据库脚本分享
2015/06/29 Python
python提取字典key列表的方法
2015/07/11 Python
python实现决策树C4.5算法详解(在ID3基础上改进)
2017/05/31 Python
用python统计代码行的示例(包括空行和注释)
2018/07/24 Python
python  Django中的apps.py的目的是什么
2018/10/15 Python
如何不用安装python就能在.NET里调用Python库
2019/07/12 Python
Python3交互式shell ipython3安装及使用详解
2020/07/11 Python
JavaScript+Canvas实现自定义画板的示例代码
2019/05/13 HTML / CSS
美国手机支架公司:PopSockets
2019/11/27 全球购物
生物化学研究助理员求职信
2013/10/09 职场文书
英文自荐信
2013/12/15 职场文书
物业保安员岗位职责
2014/03/14 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
计算机求职信
2014/07/02 职场文书
员工年终自我评价
2014/09/14 职场文书
五年级学生期末评语
2014/12/26 职场文书
毕业设计致谢词
2015/05/14 职场文书
浅谈移动端中的视口(viewport)的具体使用
2021/04/13 HTML / CSS
解析Redis Cluster原理
2021/06/21 Redis