溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

HTML5最新的canvas元素有什么用

發(fā)布時間:2021-01-19 11:32:42 來源:億速云 閱讀:185 作者:小新 欄目:web開發(fā)

這篇文章將為大家詳細講解有關(guān)HTML5最新的canvas元素有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

HTML5 Canvas

最后一次修改 2017年08月01日

標簽定義圖形,比如圖表和其他圖像,您必須使用腳本來繪制圖形。

在畫布上(Canvas)畫一個紅色矩形,漸變矩形,彩色矩形,和一些彩色的文字。

什么是 Canvas?

HTML5  元素用于圖形的繪制,通過腳本 (通常是JavaScript)來完成.

標簽只是圖形容器,您必須使用腳本來繪制圖形。

你可以通過多種方法使用Canva繪制路徑,盒、圓、字符以及添加圖像。

html5 canvas有什么用?

HTML5 <canvas> 標簽用于繪制圖像(通過腳本,通常是 JavaScript)。不過,<canvas> 元素本身并沒有繪制能力(它僅僅是圖形的容器) - 您必須使用腳本來完成實際的繪圖任務。getContext() 方法可返回一個對象,該對象提供了用于在畫布上繪圖的方法和屬性。

瀏覽器支持

Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 支持   元素.

注意: Internet Explorer 8 及更早 IE 版本的瀏覽器不支持   元素.

創(chuàng)建一個畫布(Canvas)

一個畫布在網(wǎng)頁中是一個矩形框,通過  元素來繪制.

注意: 默認情況下   元素沒有邊框和內(nèi)容。

簡單實例如下,如:

<canvas id="myCanvas" width="200" height="100"></canvas>

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

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

使用 style 屬性來添加邊框,如:

<canvas id="myCanvas" width="200" height="100"
style="border:1px solid #000000;">
</canvas>

實例解析:

首先,找到 <canvas> 元素:

var c=document.getElementById("myCanvas");

然后,創(chuàng)建 context 對象:

var ctx=c.getContext("2d");

getContext("2d") 對象是內(nèi)建的 HTML5 對象,擁有多種繪制路徑、矩形、圓形、字符以及添加圖像的方法。

下面的兩行代碼繪制一個紅色的矩形:

ctx.fillStyle="#FF0000";

ctx.fillRect(0,0,150,75);

設置fillStyle屬性可以是CSS顏色,漸變,或圖案。fillStyle默認設置是#000000(黑色)。

fillRect(x,y,width,height) 方法定義了矩形當前的填充方式。

Canvas 坐標

canvas 是一個二維網(wǎng)格。

canvas 的左上角坐標為 (0,0)

上面的 fillRect 方法擁有參數(shù) (0,0,150,75)。

意思是:在畫布上繪制 150x75 的矩形,從左上角開始 (0,0)。

Canvas - 路徑

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

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

lineTo(x,y) 定義線條結(jié)束坐標

繪制線條我們必須使用到 "ink" 的方法,就像stroke().

這是實例:

<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
您的瀏覽器不支持 HTML5 canvas 標簽。</canvas>
<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.moveTo(0,0);
ctx.lineTo(200,100);
ctx.stroke();
</script>
</body>
</html>

在canvas中繪制圓形, 我們將使用以下方法:

arc(x,y,r,start,stop)

實際上我們在繪制圓形時使用了 "ink" 的方法, 比如 stroke() 或者 fill()

又是一個實例:

<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">

您的瀏覽器不支持 HTML5 canvas 標簽。</canvas>

<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
</script> 
</body>
</html>

Canvas - 文本

使用 canvas 繪制文本,重要的屬性和方法如下:

font - 定義字體

fillText(text,x,y) - 在 canvas 上繪制實心的文本

strokeText(text,x,y) - 在 canvas 上繪制空心的文本

Canvas -  漸變

漸變可以填充在矩形, 圓形, 線條, 文本等等, 各種形狀可以自己定義不同的顏色。

以下有兩種不同的方式來設置Canvas漸變:

createLinearGradient(x,y,x1,y1) - 創(chuàng)建線條漸變

createRadialGradient(x,y,r,x1,y1,r1) - 創(chuàng)建一個徑向/圓漸變

當我們使用漸變對象,必須使用兩種或兩種以上的停止顏色。

addColorStop()方法指定顏色停止,參數(shù)使用坐標來描述,可以是0至1.

使用漸變,設置fillStyle或strokeStyle的值為漸變,然后繪制形狀,如矩形,文本,或一條線。

關(guān)于“HTML5最新的canvas元素有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI