Fabric.js 实战开发使用介绍

原生canvas用的多的有哪些槽点就不用我多说了;fabric 作为一个canvas库,提供了非常高效、直观的API操作,使我们对涉及canvas相关的功能开发效率大幅提升~~~~

简单记录下自己的心得;以下是对比canvas来说的优势:

1.简单来讲fabric使我们在平面上绘制图形(直线、圆、折线、路径、文本等)、加载图片、svg等都更加简单、直观;后续统称这些为图形;

2.使我们操作图形便捷很多,位置、大小、颜色、角度等属性;不必像canvas一样考虑重新绘制问题;

3.监听图形变化、鼠标操作等,便于与用户进行操作交互和功能统一处理等;

4.可方便的获取、设置任何图形的各个信息,如点坐标、矩阵变化数据、图形类型、颜色、角度、宽高、中心点(包括其他点位)等;

还有很多全凭自己想象!结合fabric提供的API进行大胆的开发!

就单单靠上述4个,就可以开发非常多且复杂的功能!如:撤销、重做,clipper图形剪辑,拆分图形,对齐图形,任意形式的批量创建,PS钢笔绘制,图片截取,复制粘贴,导入导出数据等;


想要玩好fabric,那么对canvas和svg是一定 需要有理解的!即便你fabric,canvas,svg现在都不懂的情况下。这些都是相辅相成的,因为光看fabric的文档,并不能让你如鱼得水。

但是不需要担心,个人感觉这些并不难,半年前的我对这3个也是都不懂,在新项目中边开发边看资料看文档,现在对这3也颇有理解且实战经验颇为丰富了,仅次于领导了哈哈。


相关功能对应文章: (会慢慢补充)

  1. 项目中涉及绘图之类,需要键盘快捷键响应各工具功能的,自然少不了快捷键的功能模块,该功能实现就查看该文章即可;hotkeys-js库实战记录 - 监听键盘按键(快捷键)-CSDN博客
  2. 想要在画布上方便的自由绘图、查看内容、操作各功能等,自然少不了对画布的灵活缩小、放大、拖动显示位置、自适应恢复布局等。 Fabric 画布缩放、拖动、初始化大小-CSDN博客

说实话如果只是贴些简单代码,告诉如何初始化fabric,画矩形,画圆形,给点颜色、设置坐标、设置角度什么的,完全没意思。这些都太简单了,也显得文章太水了哈哈。所以后续都以个人实战中的项目功能为例,进行分享、说明、个人回顾记录。

相关推荐
2503_928411562 小时前
12.4 axios的二次封装-深拷贝
前端·javascript·vue.js
你真的可爱呀5 小时前
uniapp+vue3项目中的常见报错情况以及解决方法
前端·vue.js·uni-app
差点GDP9 小时前
模拟请求测试 Fake Rest API Test
前端·网络·json
酒尘&9 小时前
Hook学习-上篇
前端·学习·react.js·前端框架·react
houyhea10 小时前
从香港竹脚手架到前端脚手架:那些"借来"的发展智慧与安全警示
前端
哈哈~haha10 小时前
Step 14: Custom CSS and Theme Colors 自定义CSS类
前端·css·ui5
Ndmzi10 小时前
Matlab编程技巧:自定义Simulink菜单(理解补充)
前端·javascript·python
勇气要爆发10 小时前
物种起源—JavaScript原型链详解
开发语言·javascript·原型模式
我命由我1234511 小时前
VSCode - VSCode 修改文件树缩进
前端·ide·vscode·前端框架·编辑器·html·js
SoaringHeart11 小时前
Flutter组件封装:验证码倒计时按钮 TimerButton
前端·flutter