mit HTML5 können Sie Grafiken mithilfe des Elements
In diesem Beitrag werde ich Ihnen JCANVAS vorstellen, einer kostenlosen und Open-Source-JQuery-basierten Bibliothek für die HTML5-Canvas-API.
Wenn Sie sich mit JQuery entwickeln, erleichtert JCanvas es einfacher und schneller, coole Canvas -Zeichnungen und interaktive Anwendungen mit JQuery Syntax zu codieren.
Die JCANVAS -Website erklärt:
Mitjcanvas ist eine JavaScript -Bibliothek, die mit JQuery und für JQuery geschrieben wurde und die sich um die HTML5 -Canvas -API handelt und neue Funktionen und Funktionen hinzufügt, von denen viele anpassbar sind. Zu den Fähigkeiten gehören Ebenen, Ereignisse, Drag & Drop, Animation und vieles mehr.
Das Ergebnis ist eine flexible API, die in eine zuckerhaltige jQuery-artige Syntax eingewickelt ist, die die HTML5-Leinwand Leistung und Leichtigkeit bringt.
Jcanvas können Sie alles tun, was Sie mit der nativen Canvas -API und mehr tun können. Wenn Sie es vorziehen, können Sie auch native HTML5 -Canvas -API -Methoden mit JCanvas verwenden. Die DRAG () -Methode dient genau diesen Zweck. Darüber hinaus können Sie JCANVAs problemlos mit Ihren eigenen Methoden und Eigenschaften mit seiner Extend () -Funktion erweitern.
Um JCANVAs in Ihr Projekt aufzunehmen, laden Sie das Skript von der offiziellen Website oder der GitHub -Seite herunter und geben Sie es in Ihren Projektordner ein. Wie bereits erwähnt, braucht Jcanvas JQuery, um zu arbeiten. Gehen Sie also auch darauf ein.
Die Skriptdateien Ihres Projekts sehen ungefähr so aus:
<scriptjs/jcanvas.min.js><span><span><span></script</span>></span> </span><scriptmyCanvas" width<span>="600"</span> height<span>="300"</span>> <span><span><span><p</span>></span>This is fallback content </span> for users of assistive technologies or of browsers that don't have full support for the Canvas API.<span><span><span></p</span>></span> </span><span><span><span></canvas</span>></span></span>
Hier sind einige Punkte von Interesse am Code -Snippet oben.
<scriptjs/jcanvas.min.js><span><span><span></script</span>></span> </span><scriptmyCanvas" width<span>="600"</span> height<span>="300"</span>> <span><span><span><p</span>></span>This is fallback content </span> for users of assistive technologies or of browsers that don't have full support for the Canvas API.<span><span><span></p</span>></span> </span><span><span><span></canvas</span>></span></span>
fillstyle legt die Hintergrundfarbe des Rechtecks fest;
Hier ist eine Demo mit der Rechteckform:
Siehe Pen Jcanvas Beispiel: Rechteck von SitePoint (@sinepoint) auf CodePen.
bögen sind Teile des Randes eines Kreises. Mit JCanvas ist das Zeichnen von Bögen nur darum, die gewünschten Werte für einige Eigenschaften innerhalb der Drawarc () -Methode festzulegen:
<script src="js/jquery.min.js><span><span><span></script</span>></span> </span><script src="js/jcanvas.min.js><span><span><span></script</span>></span> </span><script src="js/script.js><span><span><span></script</span>></span></span>
Zeichnen von Bögen beinhaltet die Festlegung eines Wertes für die RADIUS -Eigenschaft sowie die Start- und Endwinkel in Grad. Wenn Sie möchten, dass die Richtung Ihres Bogens gegen den Uhrzeigersinn ist, fügen Sie die CCW -Eigenschaft dem obigen Code hinzu und setzen Sie sie auf true.
Hier ist eine Codepen -Demo des obigen Code:
Siehe Pen Jcanvas Beispiel: Bogen von SitePoint (@sinepoint) auf CodePen.
Ein Kreis zeichnen ist so einfach wie die Auslassung von Start- und Endeigenschaften aus der Drawarc () -Methode.
So können Sie beispielsweise eine einfache Grafik eines lächelnden Gesichts mit nur Bogenformen zeichnen:
<span><span><span><canvas</span> id<span>="myCanvas"</span> width<span>="600"</span> height<span>="300"</span>></span> </span> <span><span><span><p</span>></span>This is fallback content </span> for users of assistive technologies or of browsers that don't have full support for the Canvas API.<span><span><span></p</span>></span> </span><span><span><span></canvas</span>></span></span>
Denken Sie daran, dass Jcanvas auf der JQuery -Bibliothek basiert. Daher können Sie JCANVAS -Methoden auf die gleiche Weise ketten, wie Sie JQuery -Methoden ketten können.
Hier ist, wie der obige Code im Browser rendert:
Siehe Pen Jcanvas Beispiel: Lächelndes Gesicht von sitepoint (@sinepoint) auf CodePen.
Sie können schnell Linien mit JCANVAs mit der Drayline () -Methode zeichnen und eine Reihe von Punkten darstellen, mit denen Ihre Linien eine Verbindung herstellen werden.
<span>var canvas = document.getElementById('myCanvas'), </span> context <span>= canvas.getContext('2d');</span>
Der obige Code legt die abgerundeten und geschlossenen Eigenschaften auf True fest, wodurch die Ecken der Linie rundet und den verfolgten Pfad schließt.
Siehe Pen Jcanvas Beispiel: Verbundene Zeilen von SitePoint (@sinepoint) auf CodePen.
Sie können auch flexible Pfade mit der Methode DrawPath () zeichnen. Stellen Sie sich einen Pfad als einen oder mehrere angeschlossene Linien, Bögen, Kurven oder Vektoren vor.
Die Methode DrawPath () akzeptiert eine Karte mit Punkten und eine Karte von X- und Y-Koordinaten für die Teilbilder in jedem Punkt. Sie müssen auch den Pfadtyp angeben, den Sie zeichnen, z. B. Linie, Bogen usw.
Hier ist, wie Sie ein Paar angeschlossener horizontaler und vertikaler Pfeile mit Drawpath () zeichnen und Pfeile () zeichnen können, von denen letztere eine praktische JCANVAS -Methode ist, mit der Sie schnell eine Pfeilform auf die Leinwand zeichnen können:
<span>// Store the canvas object into a variable </span><span>var $myCanvas = $('#myCanvas'); </span> <span>// rectangle shape </span>$myCanvas<span>.drawRect({ </span> <span>fillStyle: 'steelblue', </span> <span>strokeStyle: 'blue', </span> <span>strokeWidth: 4, </span> <span>x: 150, y: 100, </span> <span>fromCenter: false, </span> <span>width: 200, </span> <span>height: 100 </span><span>});</span>
Die x- und y-Koordinaten jedes Teils sind relativ zu den X- und Y-Koordinaten des gesamten Pfades.
Und hier ist das Ergebnis:
Siehe Pen Jcanvas Beispiel: Verbundene Pfeile von SitePoint (@sinepoint) auf CodePen.
Sie können schnell Text auf der Leinwand mit der treffend benannten DrawText () -Methode zeichnen. Die Haupteigenschaften, die Sie benötigen, um zu arbeiten, sind:
Hier ist der Beispielcode:
<script src="js/jquery.min.js><span><span><span></script</span>></span> </span><script src="js/jcanvas.min.js><span><span><span></script</span>></span> </span><script src="js/script.js><span><span><span></script</span>></span></span>
und so sieht es im Element
Siehe Pen Jcanvas Beispiel: Zeichnen von Text von SitePoint (@sinepoint) auf CodePen.
Sie können Bilder mithilfe der Methode DrawImage () importieren und manipulieren. Hier ist ein Beispiel:
<span><span><span><canvas</span> id<span>="myCanvas"</span> width<span>="600"</span> height<span>="300"</span>></span> </span> <span><span><span><p</span>></span>This is fallback content </span> for users of assistive technologies or of browsers that don't have full support for the Canvas API.<span><span><span></p</span>></span> </span><span><span><span></canvas</span>></span></span>
Und so rendert der obige Code:
siehe Pen Jcanvas Beispiel: Importieren und Manipulieren eines Bildes von SitePoint (@sinepoint) auf CodePen.
Sie können mit allen obigen Beispielen zu einer einzelnen Codepen -Demo hier anzeigen und herumfassen.
Wenn Sie jemals eine Image -Editor -Anwendung wie Photoshop oder GIMP verwendet haben, sind Sie bereits mit Ebenen vertraut. Der coole Teil der Arbeit mit Schichten besteht darin, dass Sie die Fähigkeit erlangen, jedes Bild auf Ihrer Leinwand einzeln zu manipulieren, indem Sie es auf seine eigene Ebene zeichnen.
jcanvas bietet eine leistungsstarke Layer-API, die Ihren Canvas-basierten Designs Flexibilität verleiht.
Hier finden Sie einen Überblick über die Verwendung von JCanvas -Ebenen.
Sie können nur ein Objekt auf jeder Schicht zeichnen. Sie können Ihrem JCANVAS -Projekt auf zwei Arten Ebenen hinzufügen:
So wenden Sie die erste Technik zum Zeichnen eines blauen Rechtecks an.
<span>var canvas = document.getElementById('myCanvas'), </span> context <span>= canvas.getContext('2d');</span>
Siehe den Stift Pzengp von SitePoint (@sitepoint) auf CodePen.
Und hier ist, wie Sie die zweite Methode zum Zeichnen des gleichen Rechtecks anwenden:
<span>// Store the canvas object into a variable </span><span>var $myCanvas = $('#myCanvas'); </span> <span>// rectangle shape </span>$myCanvas<span>.drawRect({ </span> <span>fillStyle: 'steelblue', </span> <span>strokeStyle: 'blue', </span> <span>strokeWidth: 4, </span> <span>x: 150, y: 100, </span> <span>fromCenter: false, </span> <span>width: 200, </span> <span>height: 100 </span><span>});</span>
Siehe den Stift Zrjqkb von sitepoint (@sinepoint) auf CodePen.
Wie Sie sehen können, erhalten wir mit jedem der oben genannten das gleiche Ergebnis.
Der wichtige Punkt, der in beiden obigen Code -Beispielen zu bemerken ist, ist, dass die Ebene einen Namen enthält, den Sie über die Namenseigenschaft festgelegt haben. Dies erleichtert es einfach, auf diese Ebene im Code zu verweisen und alle möglichen coolen Dinge damit zu tun, z. B. das Ändern ihres Indexwert
Mal sehen, wie wir das tun können.animierende Ebenen
<script src="js/jquery.min.js><span><span><span></script</span>></span> </span><script src="js/jcanvas.min.js><span><span><span></script</span>></span> </span><script src="js/script.js><span><span><span></script</span>></span></span>
Siehe Pen Jcanvas Beispiel: Animieren von Ebenen von SitePoint (@sitepoint) auf CodePen.
Sie können alle drei vorherigen Beispiele in dieser Codepen -Demo kombiniert.
draggable Schichten
Hier ist:
<span><span><span><canvas</span> id<span>="myCanvas"</span> width<span>="600"</span> height<span>="300"</span>></span> </span> <span><span><span><p</span>></span>This is fallback content </span> for users of assistive technologies or of browsers that don't have full support for the Canvas API.<span><span><span></p</span>></span> </span><span><span><span></canvas</span>></span></span>
Schließlich dreht der Code die Ebenen und legt einen Box -Schatten fest, um zu zeigen, wie Sie diese Effekte schnell zu Ihren JCanvas -Zeichnungen hinzufügen können.
Das Ergebnis sieht so aus:
Wenn Sie möchten, dass Ihre App vor, während oder nach dem Verschieben einer draggierbaren Ebene etwas tut, erleichtert es JCANVAs, dies zu erreichen, indem Sie dies bei den relevanten Ereignissen unterstützen:
Dragstart -Auslöser, wenn Sie die Ebene
<script src="js/jquery.min.js><span><span><span></script</span>></span> </span><script src="js/jcanvas.min.js><span><span><span></script</span>></span> </span><script src="js/script.js><span><span><span></script</span>></span></span>
Nach dem Ziehen eines jeden Quadrats sehen Sie eine Nachricht auf der Seite, in der Sie befinden, welches Farbquadrat Sie gerade fallen gelassen haben. Probieren Sie es in der Demo unten aus:
Siehe die Stift -Draggable -JCanvas -Ebenen mit Callback -Funktion von SitePoint (@sinepoint) auf CodePen.
In diesem Beitrag habe ich Sie mit JCanvas vorgestellt, einer neuen JQuery-basierten Bibliothek, die mit der HTML5-Canvas-API zusammenarbeitet. Ich habe einige von JCANVAS -Methoden und -eigenschaften illustriert, mit denen Sie schnell auf die Leinwandoberfläche ziehen, visuelle Effekte, Animationen und draggierbare Schichten hinzufügen können.
Es gibt so viel mehr, was Sie mit Jcanvas machen können. Sie können die JCANVAS -Dokumentation für detaillierte Anleitungen und Beispiele besuchen, die Sie schnell in der Sandbox auf der JCANVAS -Website testen können.
Um diesen Artikel zu begleiten, habe ich eine grundlegende Malereianwendung auf CodePen mit der Methode jCanvas Drasing () zusammengestellt:
Siehe die Pen -Jcanvas -Maler -App von SitePoint (@sinepoint) auf CodePen.
Fühlen Sie sich frei, es besser zu machen, indem Sie weitere Funktionen hinzufügen und Ihre Ergebnisse mit der SitePoint -Community teilen.
Das obige ist der detaillierte Inhalt vonEinführung in Jcanvas: JQuery trifft HTML5 -Leinwand. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!