HTML5 canvas pour les nuls

Applications HTML5 Canvas communiquent avec le navigateur d'accueil pour les rappels d'animation, la lecture audio / vidéo, et la gestion des événements de l'utilisateur. Cela fournit un canal bidirectionnel entre le code javascript et le navigateur. Code javascript peut être mis au courant des activités de navigateur et de charger le navigateur sur les mesures à prendre.

Sommaire

Animation

setInterval (callbackFunction, intervalInMilliseconds)

Commentaire: Renvoie un ID

setTimeout (callbackFunction, intervalInMilliseconds) window.requestAnimationFrame

Commentaire: Les versions spécifiques à un navigateur comprennent

 webkitRequestAnimationFrame, mozRequestAnimationFrame, oRequestAnimationFrame, msRequestAnimationFrame

Audio Video

Ces fonctions font référence à un élément audio ou vidéo en utilisant la notation de la syntaxe à point. Voici un exemple: AudioElement.jouer().

canPlayType (fileMimeType)

Commentaire: retours "peut être", "probablement", ou ""

load () play () pause () setAttribute ("src", "FileSource")

Les événements utilisateur

document.onkeydown = function (event) {clé var = event.keyCode-. . .}

Commentaire: Les types d'événements de la fenêtre du navigateur Common comprennent

 onclick, ondblclick, onmousedown, onmousemove, onmouseover, onmouseout, onmouseup, onkeydown, onkeypress, onkeyup, onctrlKey, onaltKey, onshiftKeycanvas.addEventListener ("type", la fonction, false)

Commentaire: Les types d'événements de zone canevas commun comprennent

 clic, dblclick, focus, focusin, focusout, keydown, pression de touche, keyup, mousedown, mouseenter, mousemove, passage de la souris, mouseup, roulette de la souris, pause, défilement, touchstart, TouchMove, touchEnd, volumechange

Comprendre le contexte HTML5 Canvas

Une page Web HTML défini peut avoir plusieurs zones de toile. Chaque toile a un contexte associé. L'identifiant défini dans la tag est utilisé dans le code javascript pour identifier une toile et son contexte associé. Les contextes sont référencés en utilisant la notation de la syntaxe à point. Voici un exemple: contextName.save ().

getElementById ("canvasName") getContext («2D») save () restore ()

Contexte HTML5 Canvas Attributs

Chaque contexte HTML5 Canvas contient des attributs qui peuvent être modifiés par le code javascript. Notez que les attributs sont affectés à la toile contextes, pas des objets de toile individuels. Attributs d'un contexte sont référencés en utilisant la notation de la syntaxe à point. Voici un exemple: contextName.fillStyle ="rouge". Les attributs suivants montrent défaut et d'autres valeurs en option:




fillStyle "noir" Police "10px sans-serif" globalAlpha 1.0

Commentaire: Les valeurs indiquées sont les valeurs par défaut après attributs

globalCompositeOperation «source-over"

Commentaire: D'autres compositions sont

 «source-in», «source-out», «source-atop", "destination-over", "destination-in", "destination-out", "destination-sommet», «léger», «copie», "XOR" lineCap "butt"

Commentaire: Autres bouchons sont "rond" et "carré".

lineJoin "miter"

Commentaire: Autre rejoint sont "rond" et "biseau".

lineWidth 1.0miterLimit 10.0shadowColor "noir transparent"

Commentaire: Autres couleurs comprennent grande variété

shadowBlur 0.0shadowOffsetX 0.0shadowOffsetY 0.0strokeStyle "noir"

Commentaire: Autres couleurs comprennent grande variété

textAlign "start"

Commentaire: Autres alignements sont

 "fin", "gauche", "droit", "centre"TextBaseline "alphabétique"

Commentaire: Autres lignes de base sont

 "haut", "pendaison", "milieu", "idéographique", "bas"

Fonctions HTML5 Canvas Drawing

Fonctions javascript sont utilisés pour manipuler les pixels sur les zones HTML5 toile en fonction des paramètres d'attributs et paramètres de la fonction. Référence Fonctions un contexte en utilisant la notation de la syntaxe à point. Voici un exemple: contextName.beginPath ().

Arcs

arc (XPosition, YPosition, rayon, startAngle, endAngle, dans le sens antihoraire)

arcTo (xBeginning, yBeginning, xEnd, yEnd, rayon)

Clipping

rect (XPosition, YPosition, largeur, hauteur)

Commentaire: D'autres formes peuvent également être utilisés pour mettre en place une zone d'écrêtage.

Clip ()

Courbes

moveTo (xStartPosition, yStartPosition)
bezierCurveTo (xControl1, yControl1, xControl2, yControl2, xEnd, yEnd)
quadraticCurveTo (xcontrol, yControl, xEnd, yEnd)

Dégradés

createLinearGradient (xPosition1, yPosition1, xPosition2, yPosition2)
createRadialGradient (xCircle1, yCircle1, radius1, xCircle2, yCircle2, radius2)
addColorStop (positionFromZeroToOne, couleur)

Images

drawImage (image, XPosition, YPosition)
drawImage (image, XPosition, YPosition, newWidth, newHeight)
drawImage (image, xCrop, yCrop, XPosition, YPosition, newWidth, newHeight)

Lignes et des chemins

beginPath ()
moveTo (XPosition, YPosition)
lineTo (XPosition, YPosition)
isPointInPath (XPosition, YPosition)

Commentaire: Retourne vrai si en chemin de courant

accident vasculaire cérébral()
closePath ()

Patterns

createPattern (image, "répéter")

Commentaire: d'autres modèles sont "no-repeat", "repeat-x", "repeat-y"

Rectangles

clearRect (XPosition, YPosition, largeur, hauteur)
fillRect (XPosition, YPosition, largeur, hauteur)
strokeRect (XPosition, YPosition, largeur, hauteur)
rect (XPosition, YPosition, largeur, hauteur)

Texte

fillText (string, XPosition, YPosition, maxWidth)

Commentaire: maxWidth est facultatif.

strokeText (string, XPosition, YPosition, maxWidth)

Commentaire: maxWidth est facultatif.

measureText (chaîne)

Commentaire: Retourne un objet qui contient la largeur en pixels

Transformées

rotate (angle)
échelle (scaleHorizontal, scaleVertical)
traduire (xTranslation, yTranslation)
setTransform (scaleX, skewY, skewX, scaleY, translateX, translateY)