组件fishcomponent.js的代码如下:

Heim > Web-Frontend > H5-Tutorial > Beispielcode für benutzerdefiniertes abgerundetes Rechteck und gepunktete Linien in HTML5 Canvas_HTML5-Tutorial-Fähigkeiten

Beispielcode für benutzerdefiniertes abgerundetes Rechteck und gepunktete Linien in HTML5 Canvas_HTML5-Tutorial-Fähigkeiten

WBOY
Freigeben: 2016-05-16 15:49:04
Original
1673 Leute haben es durchsucht

Benutzerdefiniertes abgerundetes HTML5 Canvas-Rechteck und gestrichelte Linie (RoundedRectangle und Dash Line)

Implementiert eine Demonstration des Hinzufügens benutzerdefinierter Funktionen zum HTML Canvas 2D-Kontextzeichnungsobjekt, wie gestrichelte Linien gezeichnet und die Intervallgröße gestrichelter Linien gesteuert werden. und lernen Sie, Kreise zu zeichnen. Eck-Rechteck-Tipps.

Die im HTML5-Canvas-Zeichenobjekt bereitgestellten nativen Funktionen implementieren nicht die Funktionen zum Zeichnen abgerundeter Rechtecke und gepunkteter Linien, aber über den Object.prototype der JavaScript-Sprache können diese beiden Funktionen dem Objekt CanvasRenderingContext2D hinzugefügt werden . Der Code-Demonstrationseffekt ist wie folgt:

Der Code der Komponente fishcomponent.js lautet wie folgt:

Code kopieren
Der Code lautet wie folgt:

CanvasRenderingContext2D.prototype.roundRect =
function(x, y, width, height, radius, fill, Stroke) {
if (Typeof Stroke == „undefiniert“) {
Stroke = true; 🎜>this.beginPath();
this.moveTo(x radius, y);
this.lineTo(x width - radius, y);
this.quadraticCurveTo(x width, y, x width , y radius);
this.lineTo(x width, y height - radius);
this.lineTo( x-Radius, y-Höhe);
this.quadraticCurveTo(x, y height, x, y height - radius); , x Radius, y); fill();
}
};
CanvasRenderingContext2D.prototype.dashedLineTo = function (fromX, fromY, toX, toY, pattern) {
// Standardintervallabstand -> 5px
if (typeof pattern === " undefiniert") {
pattern = 5;
// berechne Delta x und Delta y
var dx = (toX - fromX); var dy = (toY - fromY) ;
var distance = Math.floor(Math.sqrt(dx*dx dy*dy));
var dashlineInteveral = (pattern <= 0) ? /pattern);
var deltay = (dy/distance) * pattern; 🎜>for(var dl=0 ; dlif(dl%2) {
this.lineTo(fromX dl*deltax, fromY dl*deltay);
this.moveTo(fromX dl*deltax, fromY dl*deltay); Demo in HTML:





Code kopieren


Der Code lautet wie folgt:


< !DOCTYPE html>
http-equiv="Content-type" content= "text/html;charset=UTF-8"> js">

HTML5 Canvas Dash-line Demo - Von Gloomy Fish
Gestrichelte Linie und abgerundetes Rechteck 
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage