Rumah > Artikel > hujung hadapan web > Bagaimana untuk menetapkan kunci tersuai untuk mendayakan/melumpuhkan penskalaan bersatu pada kanvas FabricJS?
Dalam artikel ini, kita akan belajar cara menetapkan kunci tersuai untuk mendayakan/melumpuhkan penskalaan bersatu dalam FabricJS. Dalam FabricJS, apabila objek diseret dari sudut, objek berubah secara berkadar. Ini dipanggil penskalaan seragam. Walau bagaimanapun, kami boleh mendayakan/melumpuhkan tingkah laku ini menggunakan uniScaleKey.
new fabric.Canvas(element: HTMLElement|String, { uniScaleKey: String }: Object)
elemen#🎜🎜🎜🎜🎜 Parameter ini 🎜# Elemen itu sendiri boleh diperoleh daripada Dokumen. getElementById() atau id elemen itu sendiri. Kanvas FabricJS akan dimulakan pada elemen ini.
Pilihan (pilihan)- Parameter ini ialah objek yang menyediakan penyesuaian tambahan pada kanvas kami. Menggunakan parameter ini, anda boleh menukar banyak atribut yang berkaitan dengan kanvas, seperti warna, kursor dan lebar jidar, antaranya uniScaleKey ialah satu atribut. Ia menerima nilai rentetan yang menentukan kunci yang menogol penskalaan bersatu. Nilai lalainya ialah shiftKey. Contoh 1
#🎜 Mari lihat uniScaleKey atribut yang digunakan dalam contoh Kod untuk kunci tersuai yang melumpuhkan penskalaan bersatu dalam FabricJS. Di sini kami menetapkan uniScaleKey kepada "altKey".
<!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>Setting a custom key to enable/disable uniform scaling on a canvas</h2> <p>Hold the <b>alt</b> key and stretch the object diagonally. The object will scale non-uniformly. </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { uniformScaling: true, uniScaleKey: "altKey" }); // Creating an instance of the fabric.Rect class var circle = new fabric.Circle({ left: 215, top: 100, radius: 50, fill: "orange", }); // Adding it to the canvas canvas.add(circle); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
Contoh 2
Lulus atribut uniScaleKey dengan nilai "ctrlKey"Dalam contoh ini, uniformScaling
telah diberikan nilai palsu, yang bermaksud ciri itu telah dilumpuhkan. Sebaik sahaja kami menekanctrlKey, penskalaan seragam akan didayakan semula.
<!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>Setting a custom key to enable/disable uniform scaling on a canvas </h2> <p>Hold the <b>ctrl</b> key and stretch the object diagonally. It will scale uniformly. </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas", { uniformScaling: false, uniScaleKey: "ctrlKey" }); // Creating an instance of the fabric.Rect class var circle = new fabric.Circle({ left: 215, top: 100, radius: 50, fill: "red", }); // Adding it to the canvas canvas.add(circle); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
Atas ialah kandungan terperinci Bagaimana untuk menetapkan kunci tersuai untuk mendayakan/melumpuhkan penskalaan bersatu pada kanvas FabricJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!