Maison > Article > interface Web > Comment désactiver la mise à l'échelle unifiée dans Canvas à l'aide de FabricJS ?
Dans cet article, nous apprendrons comment désactiver la mise à l'échelle unifiée dans Canvas à l'aide de FabricJS. Dans FabricJS, lorsqu'un objet est déplacé depuis un coin, l'objet se transforme proportionnellement. Cependant, nous pouvons désactiver ce comportement en utilisant l'attribut uniformScaling.
new fabric.Canvas(element: HTMLElement|String, { uniformScaling: Boolean }: Object)
Element - Ce paramètre est l'élément
Options (facultatif) - Ce paramètre est un objet qui permet une personnalisation supplémentaire de notre canevas. En utilisant ce paramètre, vous pouvez modifier les propriétés liées au canevas telles que la couleur, le curseur, la largeur de la bordure et de nombreuses autres propriétés, dont uniformScaling est une propriété. Il accepte une valeur booléenne qui détermine si l'objet doit être mis à l'échelle proportionnellement. Sa valeur par défaut est True.
Regardons un exemple de code pour voir comment un objet évolue de manière inégale lorsque uniformScaling est défini sur False . À partir de FabricJS version 4, la propriété uniScaleTransform a été supprimée et remplacée par uniformScaling.
<!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> <div style="padding: 10px; font-weight: bold; margin-left: 32px"> How to disable uniform scaling in canvas using FabricJS? </div> <canvas id="canvas" width="500" height="300" style="border: 2px solid #000000"> </canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { // UniformScaling is disabled uniformScaling: false }); // Creating an instance of the fabric.Rect class var circle = new fabric.Circle({ left: 70, top: 90, radius: 40, fill: "#006400", }); // Adding it to the canvas canvas.add(circle); </script> </body> </html>
Maintenant que nous avons compris comment mettre à l'échelle de manière non uniforme lorsque uniformScaling est False, nous pouvons activer uniformScaling pour éviter cela. Voyons à quoi ressemble le code -
<!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> <div style="padding: 10px; font-weight: bold; margin-left: 32px"> How to disable uniform scaling in canvas using FabricJS? </div> <canvas id="canvas" width="500" height="300" style="border: 2px solid #000000"> </canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { // UniformScaling is enabled uniformScaling: true }); // Creating an instance of the fabric.Rect class var circle = new fabric.Circle({ left: 70, top: 90, radius: 40, fill: "#006400", }); // Adding it to the canvas canvas.add(circle); </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!