400-650-7353
您所在的位置:首頁 > IT干貨資料 > web前端 > 【Web前端基礎知識】canvas基礎入門知識詳解

【Web前端基礎知識】canvas基礎入門知識詳解

  • 發布: Web前端培訓
  • 來源:優就業
  • 2021-09-28 14:09:04
  • 閱讀()
  • 分享
  • 手機端入口

有的人可能聽說過html5,在html5中新增了很多標簽,其中就有我們今天要講的Canvas,那么問題就隨之來了,什么是 canvas呢?HTML5的canvas元素可被用來通過JavaScript(CanvasAPI 或WebGLAPI)繪制圖形及圖形動畫【來源于MDN的說明】。

  1. 注意: 
  2. 1.<canvas> 標簽只是圖形容器,必須需要使用腳本來繪制圖形。 
  3. 2.默認情況下 <canvas> 元素沒有邊框和內容。 

接下來我們一起畫一個canvas吧

首先,要創建一個畫布(Canvas)

  1. HTML:寬300, 高200 
  2. <canvas id="myCan" width="300" height="200" style="border: 1px solid black"></canvas> 

注意: 標簽通常需要指定一個id屬性 (腳本中經常引用), width 和 height 屬性定義的畫布的大小.

提示:可以在HTML頁面中使用多個canvas元素.

接下來,第二步開始使用 JavaScript 來繪制圖像

我們之前也提到說canvas 元素本身是沒有繪圖能力的,所以關于繪制的工作需要在 JavaScript 內部完成:

JavaScript:

  1. 1.找到 <canvas> 元素: 
  2. var can=document.getElementById("myCan"); 
  3. 2.創建 context 對象: 
  4. //getContext("2d") 對象是canvas內置的 HTML5 對象,它擁有多種繪制路徑、矩形、圓形、字符以及添加圖像的方法。 
  5. var c=can.getContext("2d"); 
  6. 3.設置fillStyle屬性可以是CSS顏色,漸變,或圖案等。 
  7.   //fillStyle 默認設置是黑色。 
  8. c.fillStyle="red"
  9.  //fillRect(x,y,width,height) 方法定義了矩形當前的填充方式。 
  10. c.fillRect(100,50,100,100); 

效果圖:

第三步 關于Canvas 的坐標

我們知道實際上canvas其實是一個二維的網格,它 的左上角坐標為 (0,0),

之前我們在上面使用 的fillRect 方法,有參數 (100,50,100,100),

這幾個參數的意思實際上是指:在canvas畫布上繪制 100x100 的矩形,從坐標點(100,50)開始 。

坐標示意圖:

第四步 關于Canvas的路徑

我們可以使用以下兩種的方法,在Canvas上畫線:

1.moveTo(x,y) 定義線條開始坐標

2.lineTo(x,y) 定義線條結束坐標

示例:

  1. HTML:寬100, 高100 
  2. <canvas id="myCanvas" width="100" height="100"  
  3. style="border: 1px solid black"></canvas> 

JavaScript:

  1. 定義開始坐標(50,50), 和結束坐標 (100,100)。然后使用 stroke() 方法來繪制線條: 
  2. var can=document.getElementById("myCan"); 
  3. var c=can.getContext("2d"); 
  4. c.moveTo(50,50); 
  5. c.lineTo(100,100); 
  6. c.stroke(); 

效果圖:

文章“【Web前端基礎知識】canvas基礎入門知識詳解”已幫助

更多內容

>>本文地址:http://www.ej-fs.com/zhuanye/2021/70197.html

THE END  

聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。

領取零基礎自學IT資源

(內含學習路線+視頻教程+項目源碼)

涉及Java、Web前端、UI設計、軟件測試、Python等多個IT熱門方向

打開微信掃一掃即可領取哦~

1 您的年齡

2 您的學歷

3 您更想做哪個方向的工作?

獲取測試結果
  • 大前端大前端
  • 大數據大數據
  • 互聯網營銷互聯網營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯網嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內設計室內設計
  • 平面設計平面設計
  • 電商設計電商設計
  • 網頁設計網頁設計
  • 全鏈路UI/UE設計UI設計
  • VR/AR游戲開發VR/AR
  • 網絡安全網絡安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發智能機器人
 

快速通道fast track

近期開班時間TIME

久久综合 最新最全免费欧美性爱,国产精品模特口爆吞精,av影音先锋
午夜av| av女优排名| 欧美90少妇xx00| 国产熟妇露脸在线观看| 欧美viboss孕妇| 国产第一页| 波多野结衣教师| 亚洲成a人片在线观看| 萝双腿之间乳白液体视频| 和岳坶做爰中文字幕| 欧美日韩中文国产一区| 无码不卡中文字幕在线观看| 香蕉视频在线观看| 美丽的熟妇中文字幕| 免费毛片在线看不用播放器| av在线播放| 青草视频在线观看| 97在线看视频福利免费| 在线av电影| 日本真人做人爱视频免费观看| 免费可看黄的视频网站| 宾馆嫖大龄熟妇露脸在线播放| 国产精品自拍| free性欧美69巨大| http://www.hing88.com