Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk menukar objek IText menjadi rentetan URL seperti data menggunakan FabricJS?

Bagaimana untuk menukar objek IText menjadi rentetan URL seperti data menggunakan FabricJS?

王林
王林ke hadapan
2023-09-14 13:21:161249semak imbas

如何使用 FabricJS 将 IText 对象转换为类似数据的 URL 字符串?

Dalam tutorial ini, kita akan belajar cara menukar objek IText kepada rentetan URL seperti data menggunakan FabricJS. Kelas IText telah diperkenalkan dalam FabricJS versi 1.4, yang memanjangkan Fabric.Text dan digunakan untuk mencipta kejadian IText. Kejadian IText memberi kita kebebasan untuk memilih, memotong, menampal atau menambah teks baharu tanpa konfigurasi tambahan. Terdapat juga pelbagai kombinasi kekunci yang disokong dan kombinasi tetikus/sentuh untuk menjadikan teks interaktif yang tidak tersedia dalam Teks.

Namun, Textbox berdasarkan IText membolehkan kami mengubah saiz segi empat tepat teks dan membalutnya secara automatik. Ini tidak berlaku untuk IText, kerana ketinggian tidak melaras berdasarkan pemisah baris. Kita boleh memanipulasi objek IText dengan menggunakan pelbagai sifat. Begitu juga, kita boleh menukar objek IText kepada rentetan URL seperti data menggunakan kaedah toDataURL.

Tatabahasa

toDataURL(options: Object): String

Parameter

  • pilihan (pilihan) - Parameter ini ialah objek yang menyediakan penyesuaian tambahan untuk perwakilan URL objek IText. Menggunakan format parameter ini, kualiti, pengganda dan banyak sifat lain boleh diubah.

Contoh 1

Jangan gunakan nilai lalai kaedah toDataURL

Mari kita lihat contoh kod untuk melihat rupa objek IText tanpa menggunakan kaedah toDataURL. Apabila menggunakan kaedah toDataURL, perwakilan URL objek IText dikembalikan. Dalam contoh ini, kami mencipta objek itext dan menetapkan pelbagai sifat kepadanya, seperti strok, isi, bayang, dsb. Walau bagaimanapun, kerana kami tidak menggunakan kaedah toDataURL, kami tidak akan dapat log masuk ke konsol dan bukannya nilai lalai objek itext.

<!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>Default value without using toDataURL method</h2>
   <p>You can open console from dev tools and see the logged output</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 shadow object
      var shadow = new fabric.Shadow({
         blur: 25,
         color: "grey",
         offsetX: 12,
         offsetY: 15,
      });

      // Initiate an itext object
      var itext = new fabric.IText(
         "Add sample text here.Lorem ipsum dolor sit amet consectetur adipiscing.",{
            width: 300,
            left: 50,
            top: 70,
            fill: "#c70039",
            backgroundColor: "#c1dfed",
            stroke: "#c70039",
            originX: "center",
            shadow: shadow,
         }
      );

      // Add it to the canvas
      canvas.add(itext);

      // Console logging the itext object
      console.log("The itext object is as follows: ", itext);
   </script>
</body>
</html>

Contoh 2

Gunakan kaedah toDataURL

Mari kita lihat contoh kod untuk melihat output yang dilog apabila menggunakan kaedah toDataURL. Sebaik sahaja kami membuka konsol daripada alat pembangunan, kami boleh melihat perwakilan URL objek IText. Kami boleh menyalin URL dan menampalnya ke dalam bar alamat tab baharu untuk melihat output akhir.

<!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 the toDataURL method</h2>
   <p> You can open console from dev tools and see the output URL. You can copy that and paste it in the address bar of a new tab to see that the image </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 shadow object
      var shadow = new fabric.Shadow({
         blur: 25,
         color: "grey",
         offsetX: 12,
         offsetY: 15,
      });

      // Initiate an itext object
      var itext = new fabric.IText(
         "Add sample text here.Lorem ipsum dolor sit amet consectetur adipiscing.", {
            width: 300,
            left: 50,
            top: 70,
            fill: "#c70039",
            backgroundColor: "#c1dfed",
            stroke: "#c70039",
            originX: "center",
            shadow: shadow,
         }
      );

      // Add it to the canvas
      canvas.add(itext);

      // Using the toDataURL method
      console.log(itext.toDataURL());
   </script>
</body>
</html>

Atas ialah kandungan terperinci Bagaimana untuk menukar objek IText menjadi rentetan URL seperti data menggunakan FabricJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam