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 相关文章推荐
CSS3教程:background-clip和background-origin
Oct 17 HTML / CSS
使用CSS3的appearance属性改变任何元素的浏览器默认风格
Dec 24 HTML / CSS
CSS3 实用技巧:实现黑白图像效果示例代码
Jul 11 HTML / CSS
一款基于css3麻将筛子3D翻转特效的实例教程
Dec 31 HTML / CSS
利用纯CSS3实现tab选项卡切换示例代码
Sep 21 HTML / CSS
html5贪吃蛇游戏使用63行代码完美实现
Jun 25 HTML / CSS
用HTML5中的Canvas结合公式绘制粒子运动的教程
May 08 HTML / CSS
Web时代变迁及html5与html4的区别
Jan 06 HTML / CSS
HTML5拖拽功能实现的拼图游戏
Jul 31 HTML / CSS
HTML5实现音频和视频嵌入的方法
Aug 22 HTML / CSS
three.js模拟实现太阳系行星体系功能
Sep 03 HTML / CSS
HTML5 HTMLCollection和NodeList的区别详解
Apr 29 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
《魔兽争霸3:重制版》更新 多项视觉效果调整
2020/05/04 魔兽争霸
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
php中有关合并某一字段键值相同的数组合并的改进
2015/03/10 PHP
Zend Framework教程之Zend_Config_Xml用法分析
2016/03/23 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
2016/08/17 PHP
深入浅析Yii admin的权限控制
2016/08/31 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
PHP使用正则表达式实现过滤非法字符串功能示例
2018/06/04 PHP
php语法检查的方法总结
2019/01/21 PHP
XENON基于JSON变种
2010/07/27 Javascript
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
JS求平均值的小例子
2013/11/29 Javascript
jQuery的remove()方法使用详解
2015/08/11 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
2016/07/06 Javascript
关于JavaScript中事件绑定的方法总结
2016/10/26 Javascript
jQuery实现大图轮播
2017/02/13 Javascript
Vuex模块化实现待办事项的状态管理
2017/03/15 Javascript
使用D3.js制作图表详解
2017/08/13 Javascript
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
详解react-native WebView 返回处理(非回调方法可解决)
2018/02/27 Javascript
vue.js数据绑定操作详解
2018/04/23 Javascript
浅析JS中回调函数及用法
2018/07/25 Javascript
在Vue中获取组件声明时的name属性方法
2018/09/12 Javascript
在Django的视图(View)外使用Session的方法
2015/07/23 Python
Django权限机制实现代码详解
2018/02/05 Python
利用Opencv中Houghline方法实现直线检测
2018/02/11 Python
Python实现的微信好友数据分析功能示例
2018/06/21 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
Python input函数使用实例解析
2019/11/22 Python
使用CSS3来实现滚动视差效果的教程
2015/08/24 HTML / CSS
canvas实现圆形进度条动画的示例代码
2017/12/26 HTML / CSS
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
怎么样写好简历中的自我评价
2013/10/25 职场文书
企业出纳岗位职责
2014/03/12 职场文书
关于安全的广播稿
2014/10/23 职场文书
Python Django框架介绍之模板标签及模板的继承
2021/05/27 Python