Maison >interface Web >Tutoriel H5 >Comment dessiner des graphiques à l'aide de CanvasAPI de H5

Comment dessiner des graphiques à l'aide de CanvasAPI de H5

php中世界最好的语言
php中世界最好的语言original
2018-01-09 09:51:022435parcourir

Cette fois, je vais vous présenter l'API Canvas de H5 pour dessiner des graphiques et comment utiliser Canvas pour créer des graphiques ? Quelles sont les précautions pour réaliser des graphismes avec Canvas ? Voici des cas pratiques, jetons un oeil.

Élément Canvas
Le code html suivant définit un élément canvas.

<!DOCTYPE html>  
<html>  
<head>  
    <title>Canvas快速入门</title>  
    <meta charset="utf-8"/>  
</head>  
<body>  
<div>  
    <canvas id="mainCanvas" width="640" height="480"></canvas>  
</div>  
</body>  
</html>

Accédez à l'élément canvas via l'instruction Javascript suivante :

//DOM写法   
window.onload = function () {   
    var canvas = document.getElementById("mainCanvas");   
    var context = canvas.getContext("2d");   
};   
//jQuery写法   
$(document).ready(function () {   
    var canvas = $("#mainCanvas");   
    var context = canvas.get(0).getContext("2d");   
});   
//接下来就可以调用context的方法来调用绘图API

2 API de base
2.1 Système de coordonnées
Rendu Canvas 2D. le contexte adopte le système de coordonnées cartésiennes planes, le coin supérieur gauche est l'origine (0,0) et 1 unité du système de coordonnées équivaut à 1 pixel de l'écran.

//绘制一个填充矩形   
context.fillRect(x, y, width, height)   
//绘制一个边框矩形   
context.strokeRect(x, y, width, height)   
//清除一个矩形区域   
context.clearRect(x, y, width, height)

2.2.2 Lignes
Il existe certaines différences entre dessiner des lignes et dessiner des graphiques. Les lignes sont en fait appelées chemins. Pour tracer un chemin simple, vous devez d'abord appeler la méthode beginPath, puis appeler moveTo pour définir les coordonnées du point de départ du chemin, puis appeler lineTo pour définir les coordonnées du point final du segment de ligne (peut être défini plusieurs fois), puis appelez closePath pour terminer le dessin du chemin. Enfin, appelez Stroke pour dessiner le contour (ou appelez Fill pour remplir le chemin). Voici un exemple :

//示例   
context.beginPath();    //开始路径   
context.moveTo(40, 40);    //移动到点(40,40)   
context.lineTo(300, 40);    //画线到点(300,30)   
context.lineTo(40, 300);    //画线到点(40,300)   
context.closePath();    //结束路径   
context.stroke();    //绘制轮廓   
//或者填充用context.fill();

2.2.3 Cercle
Canvas n'a en fait pas de méthode spéciale pour dessiner un cercle. Vous pouvez simuler un cercle en dessinant un arc. Puisqu'un arc est un chemin, l'API permettant de dessiner des arcs doit être incluse entre beginPath et closePath.
2.3 Style
2.3.1 Modifier la couleur de la ligne

var color;   
//指定RGB值   
color = "rgb(255, 0, 0)";   
//指定RGBA值(最后一个参数为alpha值,取值0.0~1.0)   
color = "rgba(255, 0, 0, 1)";   
//指定16进制码   
color = "#FF0000";   
//用单词指定   
color = "red";   
//设置填充颜色   
context.fillStyle = color;   
//设置边框颜色   
context.strokeStyle = color;

2.3.2 Modifier la largeur de la ligne

//指定线宽值   
var value= 3;   
//设置边框颜色   
context.linewidth = value;

2.4 Dessiner le texte

//Spécifier Style de police

context.font = "italic 30px bold";

//Dessiner le texte au point (40,40)

context.fillText("Bonjour tout le monde ! " , 40, 40);

Je pense que vous maîtrisez les méthodes après avoir lu ces cas. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture connexe :

Comment compter le nombre de sommes de table dans bootstrap

Comment utiliser JS pour basculer entre masquer et afficher simultanément les icônes Switch

Comment utiliser JS pour désactiver et activer les boutons

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!

Déclaration:
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