Canvas 是指在瀏覽器頁面上繪制圖像。 HTML 中的 Canvas 標(biāo)簽就是這樣一種元素,它為 HTML 提供位圖表面,就像由像素圖組成的空白畫布,可能包含兩種以上的顏色供使用。 元素用于借助腳本語言(例如 JavaScript)在網(wǎng)頁上創(chuàng)建圖形圖像。 元素創(chuàng)建一個空畫布來使用,就像圖形容器一樣,但您需要使用 javascript 進(jìn)行實際創(chuàng)建、繪制圖形、圖像等。
最初,HTML不支持canvas,但是后來HTML5引入了這個canvas功能。這個<畫布> HTML5 中的標(biāo)簽用于通過 JavaScript 腳本繪制圖形。我們還可以用這個canvas標(biāo)簽來繪制圖像??梢允褂脛赢?、圖形、照片處理、數(shù)據(jù)可視化使畫布元素變得美觀。這一畫布功能最初是通過 Apple 公司在 Web Kit 中引入的。
實時示例:與其編寫?yīng)毩⒋a來實現(xiàn)每個形狀的圖形,否則它將成為處理器的過載。因此,為了克服這種情況,開發(fā)人員在 HTML 中提出了 canvas 標(biāo)簽。更少的代碼可以給我們一個精確的圖形動畫形狀。
語法
HTML 中的畫布功能是通過應(yīng)用
<canvas> //specify some properties inside canvas tag because different shape have different properties like width="" ,height="" , style=””
//code
</canvas>
<script>
//script code for animations and graphics
</script>
在 HTML 中實現(xiàn) Canvas 標(biāo)簽的示例
這是示例:
示例#1
矩形內(nèi)的圓形與畫布示例:
?代碼:
<!DOCTYPE html>
<html>
<head>
<title>
Canvas in HTM5
</title>
<!--CSS Styles-->
<style>
h1
{
color: green;
text-align:center;
}
p
{
color:brown;
border: solid 2px blue;
font-size: 25px;
}
</style>
</head>
<body>
<h1>
Circle Shape inside Rectangle Shape
</h1>
<canvas id="rectangleCircle" width="300" height="200" style="border:2px solid red;">
</canvas>
<script>
var circle = document.getElementById("rectangleCircle");// with id drawing circle shape with script
var creatingCircle = circle.getContext("2d");//get the circle type from 2d shape
creatingCircle.beginPath();//circle shape begin
creatingCircle.arc(150,100,80,4,4*Math.PI);//circle x, y and size of the circle
creatingCircle.stroke();//stroke of the circle
</script>
</body>
</html>
?輸出:

示例#2
圓形內(nèi)的文本與畫布示例:
代碼:
/strong><!DOCTYPE html>
<html>
<head>
<title>
Canvas in HTM5
</title>
<!--CSS Styles-->
<style>
h1
{
color: red;
text-align:center;
}
p
{
color:green;
border: solid 2px maroon;
font-size: 25px;
}
</style>
</head>
<body>
<h1>
Text Inside the Circle Shape
</h1>
<canvas id="rectangleCircle" width="300" height="200" style="border:2px solid navy;">
</canvas>
<script>
var circle = document.getElementById("rectangleCircle");// with id drawing circle shape with script
var creatingCircle = circle.getContext("2d");//get the circle type from 2d shape
creatingCircle.beginPath();//circle shape begin
creatingCircle.arc(150,100,100,4,4*Math.PI);//circle x, y and size of the circle
creatingCircle.stroke();//stroke of the circle
creatingCircle.font = "30px Arial";//Creating a font
creatingCircle.strokeText("EDUCBA",100,90);// Creating text inside the circle
</script>
</body>
</html>
輸出:

示例#3
用 Canvas 畫線示例:
代碼:
<!DOCTYPE html>
<html>
<head>
<title>
Canvas in HTM5
</title>
<!--CSS Styles-->
<style>
h1
{
color: blue;
text-align:center;
}
p
{
color:red;
border: solid 2px orange;
font-size: 25px;
}
</style>
</head>
<body>
<h1>
Draw the Line with Canvas
</h1>
<canvas id="lineID" width="400" height="400" style="border:2px solid orange;">
</canvas>
<script>
var line = document.getElementById("lineID");// with id drawing line shape with script
var lineCreate = line.getContext("2d");//get the line type from 2d shape
lineCreate.moveTo(0,0);//move the line
lineCreate.lineTo(400,400);//Where to where line has to move
lineCreate.stroke();//line stroke
</script>
</body>
</html>
輸出:

示例#4
畫布上的三角形示例:
代碼:
<!DOCTYPE html>
<html>
<head>
<title>
Canvas in HTM5
</title>
<!--CSS Styles-->
<style>
h1
{
color: fuchsia;
text-align:center;
}
p
{
color:blue;
border: solid 2px skyblue;
font-size: 25px;
}
</style>
</head>
<body>
<h1>
Triangle Shape with Canvas
</h1>
<canvas id="triangleID" width="300" height="300" style="border:2px solid skyblue;">
</canvas>
<script>
var canvas = document.getElementById('triangleID');// with id drawing traingles shape with script
if (canvas.getContext)
{
var traingle = canvas.getContext('2d');//get the traingels type from 2d shape
//Creating the traingle
traingle.beginPath();
traingle.moveTo(25,25);
traingle.lineTo(105,25);
traingle.lineTo(25,105);
traingle.fill();
// Triangle can be stroked with below fuctions
traingle.beginPath();
traingle.moveTo(125,125);
traingle.lineTo(125,45);
traingle.lineTo(45,125);
traingle.closePath();
traingle.stroke();
} else
{
alert('Your browser does ot support this feature');//alert the user
document.write('Your browser does ot support this feature');//display the output
}
</script>
</body>
</html>
輸出:

?結(jié)論
HTML5版本中引入了canvas標(biāo)簽。 canvas 和 JavaScript 代碼都可以為您提供使用 canvas 標(biāo)簽繪制的準(zhǔn)確形狀。我們可以畫圓形、矩形、直線、三角形等
以上是HTML 中的畫布標(biāo)簽的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!