Toile HTML

WBOY
Libérer: 2024-09-04 16:39:45
original
886 Les gens l'ont consulté

Cet article présentera un aperçu de HTML Canvas ; comme vous le savez déjà, HTML est un langage de balisage. Pour présenter des informations au visiteur, vous pouvez écrire du HTML avec le texte à afficher et comment il sera affiché, c'est-à-dire la taille de la police, la couleur, l'orientation, etc. Lorsqu'il s'agit d'ajouter des visuels à une page, vous devez créer un lien et intégrez des images à la page, qui sont stockées séparément du fichier HTML sur votre hôte.

Mais que se passe-t-il si vous avez besoin de dessiner quelque chose sur la page ?

Qu'est-ce que HTML Canvas ?

Le canevas HTML (utilisé via la balise ) est un élément HTML utilisé pour dessiner des graphiques (lignes, barres, graphiques, etc.) sur l'écran de l'ordinateur de l'utilisateur à la volée. L'élément canvas n'est cependant qu'un conteneur pour les informations ; le dessin est réalisé via JavaScript. Il est pris en charge par tous les navigateurs Web modernes prenant en charge HTML5 et pouvant afficher JavaScript. La création d'un canevas HTML est très simple et vous pouvez l'ajouter au fichier de n'importe quelle page HTML via ce qui suit.

Syntaxe :

<canvas id="example" width="200" height="200">
<em>Content here</em>
</canvas>
Copier après la connexion

Vous pouvez définir la taille du canevas via les attributs width et height ; un ID d'élément peut également être défini dans la balise, ce qui permet d'utiliser des styles CSS sur l'élément canevas. Voici un exemple de la façon dont vous pouvez dessiner un rectangle à l'aide de l'élément Canvas :

Code :

<html>
<head>
<style>
#examplecanvas{border:2px solid green;}
</style>
</head>
<body>
<canvas id = "examplecanvas" width = "500" height = "300"></canvas>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

Exemples de dessin sur toile HTML

Maintenant que vous avez vu comment dessiner un rectangle à l'aide de l'élément canvas, examinons quelques autres objets qui peuvent être dessinés à l'aide de l'élément sur l'écran de sortie d'un navigateur.

1. Tracer une ligne sur une page

moveTo(), Stroke() et lineTo() sont des méthodes qui peuvent être utilisées pour tracer des lignes droites sur une page Web. Comme vous pouvez le deviner, moveTo() indique la position du curseur dans l'espace de l'élément, et lineTo() est la méthode qui indique le point final de la ligne. Le trait() rend la ligne visible. Voici le code pour votre référence :

Code :

<!DOCTYPE html>
<html lang="en">
<head>
<title>Canvas Line Example</title>
<style>
canvas {
border: 2px solid black;
}
</style>
<script>
window.onload = function() {
var canvas = document.getElementById("examplecanvas");
var context = canvas.getContext("2d");
context.moveTo(10, 150);
context.lineTo(350, 100);
context.stroke();
};
</script>
</head>
<body>
<canvas id="examplecanvas" width="400" height="300"></canvas>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

2. Dessiner un cercle sur une toile HTML

Contrairement aux rectangles, il n'existe pas de méthode particulière en JavaScript pour dessiner un cercle. Au lieu de cela, nous pouvons utiliser la méthode arc(), qui est utilisée pour dessiner des arcs afin de dessiner un cercle dans le canevas. Pour obtenir une toile avec un cercle dessus, vous pouvez utiliser ce qui suit :

 Syntaxe :

context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
Copier après la connexion

Voici un exemple de page avec un cercle :

Code :

<html lang="en">
<head>
<meta charset="utf-8">
<title>Canvas with a circle</title>
<style>
canvas {
border: 3px solid red;
}
</style>
<script>
window.onload = function() {
var canvas = document.getElementById("examplecanvas");
var context = canvas.getContext("2d");
context.arc(250, 150, 90, 0, 2 * Math.PI, false);
context.stroke();
};
</script>
</head>
<body>
<canvas id="examplecanvas" width="500" height="300"></canvas>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

3. Dessiner un texte dans HTML Canvas

Le texte peut également être dessiné dans un canevas HTML. Pour placer du texte sur votre canevas, vous pouvez utiliser la méthode filltext(). Voici un exemple de page HTML contenant du texte à l'intérieur d'un élément canevas :

Code :

<html lang="en">
<head>
<meta charset="utf-8">
<title>canvas with text inside the element</title>
<style>
canvas {
border: 3px solid red;
}
</style>
<script>
window.onload = function() {
var canvas = document.getElementById("examplecanvas");
var context = canvas.getContext("2d");
context.font = "bold 28px Arial";
context.fillText("This is text inside a canvas", 60, 100);
};
</script>
</head>
<body>
<canvas id="examplecanvas" width="500" height="200"></canvas>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

4. Dessiner un arc dans un canevas HTML

Comme nous en avons discuté avec un cercle, il existe une méthode appelée arc() qui est utilisée pour dessiner des arcs dans HTML Canvas. Voici la syntaxe de la méthode où il ne vous reste plus qu'à ajouter votre variable :

context.arc(centerX, centerY, radiusOfArc, startAngle, endAngle, counterclockwise);
Copier après la connexion

Voici une page HTML qui comporte un arc à l'intérieur d'un élément canevas :

Code :

<html lang="en">
<head>
<meta charset="utf-8">
<title>Arc inside an HTML Canvas</title>
<style>
canvas {
border: 3px solid red;
}
</style>
<script>
window.onload = function() {
var canvas = document.getElementById("examplecanvas");
var context = canvas.getContext("2d");
context.arc(300, 300, 200, 1.2 * Math.PI, 1.8 * Math.PI, false);
context.stroke();
};
</script>
</head>
<body>
<canvas id="examplecanvas" width="600" height="400"></canvas>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

5. Dessiner un dégradé de couleurs linéaire ou circulaire

Vous pouvez utiliser cette méthode pour createLienearGradient() afin de dessiner les dégradés de votre choix à l'intérieur de l'élément canvas. Avec cette méthode, vous devrez utiliser addColorStop() pour désigner les couleurs dégradées.

Syntaxe :

var gradient = context.createLinearGradient(startX, startY, endX, endY);
Copier après la connexion

Voici une page qui a un dégradé linéaire :

Code :

<html>
<body>
<canvas id="examplecanvas" width="400" height="200" style="border:2px solid red;">
If you are seeing this. the browser does not support the HTML5 canvas.</canvas>
<script>
var c = document.getElementById("examplecanvas");
var ctx = c.getContext("2d");
var gradient = ctx.createLinearGradient(0,0,200,0);
gradient.addColorStop(0,"green");
gradient.addColorStop(1,"red");
ctx.fillStyle = gradient;
ctx.fillRect(10,10,300,150);
</script>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

De même, la méthode de dessin de dégradés circulaires est createRadialGradient().

Syntaxe :

var gradient = context.createRadialGradient(startX, startY, startingRadius, endX, endY, endingRadius);
Copier après la connexion

Code :

<html>
<body>
<canvas id="examplecanvas" width="200" height="100" style="border:2px solid red;">
If you are seeing this. the browser does not support the HTML5 canvas. </canvas>
<script>
var c = document.getElementById("examplecanvas");
var ctx = c.getContext("2d");
var gradient = ctx.createRadialGradient(80,50,10,100,50,90);
gradient.addColorStop(0,"blue");
gradient.addColorStop(1,"yellow");
ctx.fillStyle = gradient;
ctx.fillRect(10,10,150,80);
</script>
</body>
</html>
Copier après la connexion

Sortie :

Toile HTML

Conclusion

Maintenant que vous savez de quoi il s'agit et comment il peut être utilisé dans des pages Web, vous devriez avoir plus confiance en vos compétences en matière de conception de sites Web. Bien que les images puissent être utilisées dans certains cas, l'avantage du canevas HTML est qu'il est évolutif et beaucoup plus léger en termes de taille et de puissance de traitement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal