Dans ce tutoriel, nous apprendrons comment déplacer un objet Line vers une position d'index spécifiée dans la pile d'objets de dessin à l'aide de FabricJS. L'élément Line est l'un des éléments de base fournis par FabricJS. Il est utilisé pour créer des lignes droites. Étant donné que les éléments de ligne sont géométriquement unidimensionnels et ne contiennent aucun intérieur, ils ne sont jamais remplis. Nous pouvons créer un objet ligne en créant une instance de fabric.Line, en spécifiant les coordonnées x et y de la ligne et en l'ajoutant au canevas. Afin de déplacer un objet Line vers une position d'index spécifiée dans la pile d'objets de dessin, nous utilisons la méthode moveTo.
moveTo(index: Number): fabric.Object
index - Ce paramètre accepte une valeur Number qui spécifie à quel niveau de la pile d'objets dessinés nous souhaitons déplacer l'objet.
Regardons un exemple de code pour voir le résultat lors de l'utilisation de la méthode moveTo. La méthode moveTo déplace l'objet au niveau spécifié dans la pile d'objets dessinés. Dans ce cas, utilisez la méthode moveTo pour envoyer line2 au 0ème index.
<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Using moveTo method</h2> <p> You can see that line2 (red) has been moved to the 0th index in the stack of drawn objects </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a Line object var line1 = new fabric.Line([200, 100, 100, 40], { stroke: "blue", strokeWidth: 20, }); // Initiate another Line object var line2 = new fabric.Line([200, 70, 70, 40], { stroke: "red", strokeWidth: 20, }); // Add both to the canvas canvas.add(line1); canvas.add(line2); // Using moveTo method line2.moveTo(0); </script> </body> </html>
Dans cet exemple, nous utilisons trois objets ligne, à savoir line1, line2 et line3. Même s'ils sont ajoutés au canevas par ordre numérique, line3 est clairement derrière line2 à la première position de l'index. En effet, nous avons utilisé la méthode moveTo, qui déplace line3 vers la première position d'index, tandis que line1 et line2 occupent respectivement les 0ème et 2ème positions d'index dans la pile d'objets de dessin.
<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Using moveTo method with three objects</h2> <p> You can see that line3 (green) lies in the 1st index which is middle position in stack </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiate a Line object var line1 = new fabric.Line([200, 100, 100, 40], { stroke: "blue", strokeWidth: 20, }); // Initiate another Line object var line2 = new fabric.Line([200, 70, 70, 40], { stroke: "red", strokeWidth: 20, }); // Initiate another Line object var line3 = new fabric.Line([200, 30, 30, 90], { stroke: "green", strokeWidth: 20, }); // Add them all to the canvas canvas.add(line1); canvas.add(line2); canvas.add(line3); // Using moveTo method line3.moveTo(1); </script> </body> </html>
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!