HTML5 Canvas-Anwendungen kommunizieren mit dem Host-Browser für die Animation Rückrufe, die Wiedergabe von Audio / Video- und Benutzerereignisse Handhabung. Dies liefert eine Zweiwegekanal zwischen javascript-Code und dem Browser. javascript-Code kann bewusst Browser-Aktivitäten gemacht werden und den Browser auf Maßnahmen zu ergreifen, unterweisen.
Animation
setInterval (callback, intervalInMilliseconds)
Kommentar: Gibt eine ID
setTimeout (callback, intervalInMilliseconds) window.requestAnimationFrame
Kommentar: Browser-spezifischen Versionen enthalten
webkitRequestAnimationFrame, mozRequestAnimationFrame, oRequestAnimationFrame, msRequestAnimationFrame
Audio / Video-
Diese Funktionen verweisen auf ein Audio- oder Video-Element mit Punkt-Syntax Notation. Hier ist ein Beispiel: audioElement.spielen().
canPlayType (fileMimeType)
Kommentar: Returns "könnte sein", "wahrscheinlich", oder ""
load () play () pause () setAttribute ( "src", "filesource")
Benutzerereignisse
document.onkeydown = function (event) {var key = event.keyCode-. . .}
Kommentar: Gemeinsame Browserfenster Ereignistypen umfassen
onclick, ondblclick, onmousedown, onmousemove, onmouseover, onmouseout, onmouseup, onkeydown, onkeypress, onkeyup, onctrlKey, onaltKey, onshiftKeycanvas.addEventListener ( "Typ", Funktion, false)
Kommentar: Gemeinsame Canvas-Bereich Ereignistypen umfassen
Klick, dblclick, Fokus, focusin, focusout, keydown, keypress, keyup, mousedown-, MouseEnter-, mousemove-, Mouseover, mouseup, Mausrad, Pause, rolle, touchstart, Touchmove, touchend, volume
Das Verständnis der HTML5-Canvas-Kontext
Ein HTML-definierte Web-Seite können mehrere Canvas Bereiche haben. Jeder Leinwand hat einen zugeordneten Kontext. Die ID im Tag definiert ist in javascript-Code verwendet, um eine Leinwand und der damit verbundenen Kontext zu identifizieren. Contexts verwenden Punkt-Syntax Notation referenziert. Hier ist ein Beispiel: contextName.save ().
getElementById ( "canvasName") getContext ( "2D") speichern () wiederherstellen ()
HTML5 Canvas Context-Attribute
Jeder HTML5 Canvas Kontext enthält Attribute, die von javascript-Code kann geändert werden. Beachten Sie, dass Attribute zugeordnet sind Kontexte Leinwand, nicht einzelne Canvas-Objekte. Attribute für einen Kontext verwenden Punkt-Syntax Notation referenziert. Hier ist ein Beispiel: contextName.fillStyle ="rot". Die folgenden Attribute zeigen Ausfall- und andere optionale Werte:
fillStyle "black" font "10px sans-serif" globalAlpha 1.0
Kommentar: Werte nach Attributen dargestellt sind Standardwerte
global "source-over"
Kommentar: Andere Zusammensetzungen sind
"Source-in", "Quelle-out", "source-Spitze", "Ziel-over", "Ziel-in", "Ziel-out", "Ziel-Spitze", "leichter", "Kopieren", "xor" linecap "butt"
Kommentar: Andere Kappen sind "runden" und "Platz".
linejoin "Mitra"
Kommentar: Andere Joins "runden" und "Fase".
linewidth 1.0miterLimit 10.0shadowColor "transparent black"
Kommentar: Andere Farben sind große Vielfalt
shadowBlur 0.0shadowOffsetX 0.0shadowOffsetY 0.0strokeStyle "schwarz"
Kommentar: Andere Farben sind große Vielfalt
align "Start"
Kommentar: Andere Ausrichtungen sind
"Ende", "links", "Recht", "Center" Textbaseline "alphabetisch"
Kommentar: Andere Basislinien sind
"oben", "hängend", "Mitte", "ideographic", "Boden"
HTML5 Canvas-Zeichenfunktionen
javascript-Funktionen verwendet werden, Pixel auf HTML5 Canvas Bereiche auf Attributeinstellungen und Funktionsparameter basiert zu manipulieren. Funktionen verweisen auf ein Kontext Punkt-Syntax Notation. Hier ein Beispiel: contextName.beginPath ().
Arcs
Bogen (xPosition, yPosition, Radius, startangle, endAngle, gegen den Uhrzeigersinn)
ARCTO (xBeginning, yBeginning, xEnd, yEnd, Radius)
Ausschnitt
rect (xPosition, yPosition, Breite, Höhe)
Kommentar: Andere Formen können auch verwendet werden, um einen Schnittbereich einzurichten.
Clip ()
Curves
moveTo (xStartPosition, yStartPosition)
bezierCurveTo (xControl1, yControl1, xControl2, yControl2, xEnd, yEnd)
quadraticCurveTo (xControl, yControl, xEnd, yEnd)
Gradients
createLinearGradient (xPosition1, yPosition1, xPosition2, yPosition2)
createRadialGradient (xCircle1, yCircle1, radius1, xCircle2, yCircle2, radius2)
addColorStop (positionFromZeroToOne, Farbe)
Bilder
drawImage (Bild, xPosition, yPosition)
drawImage (Bild, xPosition, yPosition, newWidth, newHeight)
drawImage (Bild, xCrop, yCrop, xPosition, yPosition, newWidth, newHeight)
Linien und Pfade
beginPath ()
moveTo (xPosition, yPosition)
lineTo (xPosition, yPosition)
isPointInPath (xPosition, yPosition)
Kommentar: Gibt true zurück, wenn der Strompfad
Schlaganfall()
closePath ()
Patterns
create (Bild, "repeat")
Kommentar: Andere Muster sind "No-repeat", "Repeat-x", "Repeat-y"
Rectangles
clearRect (xPosition, yPosition, Breite, Höhe)
fillRect (xPosition, yPosition, Breite, Höhe)
strokeRect (xPosition, yPosition, Breite, Höhe)
rect (xPosition, yPosition, Breite, Höhe)
Text
fillText (string, xPosition, yPosition, maxWidth)
Kommentar: maximale Breite ist optional.
strokeText (string, xPosition, yPosition, maxWidth)
Kommentar: maximale Breite ist optional.
measureText (string)
Kommentar: Gibt ein Objekt zurück, das die Breite in Pixel enthält
Wandelt
drehen (Winkel)
Skala (scaleHorizontal, scaleVertical)
übersetzen (xTranslation, yTranslation)
setTransform (scaleX skewY, skewX, scaleY, translateX, translateY)