<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
fabric.js
為我們提供了很多厲害的方法。今天要搞明白的一個東西是 canvas.interactive
。
官方檔案對 canvas.interactive
的解釋是:
Indicates that canvas is interactive. This property should not be changed.
canvas.interactive
預設值是 true
,官方建議我們不要修改該值,但我偏不。
先來看看將 interactive
設為 false
之後有什麼效果。
建立一個畫布,並在上面新增一個矩形。
<canvas id="canvasBox" width="400" height="400" style="border: 1px solid #ccc;"></canvas> <script> let canvas = new fabric.Canvas('canvasBox', { interactive: false // 隱藏互動模式 }) let rect = new fabric.Rect({ top: 60, left: 60, width: 60, height: 60, fill: '#08d9d6' }) canvas.add(rect) </script>
從上面的效果可以看到,選中元素後並沒有出現預設的控制點,但還是可以操作元素的縮放和旋轉的(旋轉的那個操作,我是猜了大概的操作點在那個位置)。
難怪官方勸大家不要修改 interactive
,確實有他的道理。
hasControls
和 hasBorders
需要在圖形元素上設定。
將 hasControls
設定成 false
就會取消元素選中時的控制角。
將 hasBorders
設定成 false
就會取消元素被選中時的控制邊。
<canvas id="canvasBox" width="400" height="400" style="border: 1px solid #ccc;"></canvas> <script> let canvas = new fabric.Canvas('canvasBox') let rect = new fabric.Rect({ top: 60, left: 60, width: 60, height: 60, fill: '#08d9d6', hasControls: false, // 取消控制角 hasBorders: false // 取消控制邊 }) canvas.add(rect) </script>
從上圖的效果可以看出,將 hasControls
和 hasBorders
設定成 false
後,元素可以移動,但不能縮放和旋轉。
如果不希望畫布可互動,可以使用 StaticCanvas
建立一個靜態的畫布。
只要將 new fabric.Canvas
改成 new fabric.StaticCanvas
就行了。
<canvas id="canvasBox" width="400" height="400" style="border: 1px solid #ccc;"></canvas> <script> let canvas = new fabric.StaticCanvas('canvasBox') let rect = new fabric.Rect({ top: 60, left: 60, width: 60, height: 60, fill: '#08d9d6' }) canvas.add(rect) </script>
瞧,使用了 StaticCanvas
建立的畫布,裡面的元素選不中也拉不動。
而只是將 interactive
設定成 false
的話,是可以進行操作的。
interactive
設定為 false
:可操作(移動、旋轉、縮放等),但看不見控制角和控制邊。hasControls
和 hasBorders
設定成 false
:可移動,但不能旋轉和縮放,同時看不見控制角和控制邊。StaticCanvas
建立畫布:元素無法被選中,也無法移動、選中、縮放等操作。綜上所述,在日常開發中,canvas.interactive
真的好像沒啥用耶(我還沒想到有什麼應用場景)。
程式碼倉庫
以上就是Fabric.js 修改畫布互動方式作用詳解的詳細內容,更多關於Fabric.js 修改畫布互動的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45