> Bagaimana Menggambar Scalable Vector Graphics (SVGs) Dengan JavaScript
Diterbitkan: 2023-02-25Dengan asumsi Anda menginginkan jawaban mendetail tentang cara menggambar Scalable Vector Graphics, atau SVG, dengan JavaScript, inilah salah satu cara untuk melakukannya. SVG adalah format gambar vektor berbasis XML untuk grafik dua dimensi dengan dukungan interaktivitas dan animasi. Spesifikasi SVG adalah standar terbuka yang dikembangkan oleh World Wide Web Consortium (W3C) sejak tahun 1999. Dengan JavaScript, Anda dapat menggunakan Document Object Model (DOM) untuk mengakses dan memanipulasi elemen dokumen SVG. Misalnya, Anda dapat menambahkan atau menghapus elemen, mengubah atributnya, atau menganimasikannya. Berikut ini adalah contoh dasar cara membuat dokumen SVG dengan satu elemen lingkaran dan menambahkannya ke DOM. Pertama, buat dokumen HTML dengan elemen dan atur atribut width dan height. Selanjutnya, buat elemen dan atur atribut cx dan cy untuk menentukan koordinat x dan y dari pusat lingkaran. Kemudian, atur atribut r untuk menentukan jari-jari lingkaran. Terakhir, tambahkan elemen ke elemen. Format file .svg, yang digunakan untuk menyimpan gambar dan data, memungkinkan penskalaan yang lebih dinamis. Markup XML digunakan untuk menjelaskan bagaimana ini digambar dan disejajarkan, bukan hanya menjelaskan bagaimana jalur digambar. Saat Anda merender markup menjadi file HTML, itu akan muncul persis seperti ikonnya. Jika Anda ingin menambahkan ikon SVG secara dinamis ke data dari lokasi jauh saat sedang dirender, metode ini dapat digunakan. Tag XML, seperti elemen HTML, dapat dibuat dan disusun. File main.js file XML dapat dibuat menggunakan fungsi XPath. Kami akan menempatkan tag jangkar di grafik setelah dibuat, memungkinkan fitur pengguliran berjalan. Akibatnya, elemen apa pun dapat ditangani seperti elemen lainnya setelah itu. Ada beberapa opsi untuk menambahkan gaya, kelas, dan – yang paling penting – atribut. Ikon-ikon tersebut telah ditambahkan sebelumnya ke setiap posting dan dapat digunakan sebagai tautan jangkar untuk memperlancar pengguliran. Platform SVG memiliki lebih banyak aksesibilitas. Anda harus memasang skrip untuk menggambar elemen di layar menggunakan SVG. Ini bukan waktu untuk memeriksa apakah kuis Anda telah selesai. Anda dapat dengan mudah menyelesaikannya dengan membaca halaman sebelum mengikuti kuis.Bisakah Kita Menggunakan Javascript Di Svg?Sumber Gambar: https://iconscout.comJavaScript dapat ditambahkan ke dokumen SVG dari mana saja antara tag pembuka dan penutup svg>. Skrip harus ditempatkan di bagian akhir dokumen sehingga dapat diakses sepenuhnya sambil menghindari pemblokiran. SVG dapat dilihat dengan cara yang sama seperti HTML, dengan Document Object Model (DOM). Hasilnya, Javascript dapat digunakan untuk memanipulasinya dengan cukup mudah. Dalam kursus ini, saya akan membahas cara menggunakan SVG inline dan eksternal. Contoh kode tersedia di GitHub, yang terletak di bagian atas postingan ini. Jika Anda menggunakan SVG eksternal, tidak perlu menggunakan kode yang sama saat memasukkan elemen. Karena SVG tidak dapat mengakses dokumen HTML yang tersemat di halaman, kita dapat menggunakannya untuk menggantikan SVG lain di dalamnya. Saat Anda membungkus kode JS dengan CDATA, XML mem-parsingnya sebagai bagian dari XML. Membuat dan menghapus elemen dalam HTML adalah sama. Metode createElementNS() dari dokumen yang relevan harus meneruskan nama elemen dan namespace SVG agar Anda dapat membuat elemen. Jika Anda ingin menghapus sebuah elemen, Anda harus terlebih dahulu membuat simpul teks terpisah menggunakan createTextNode() dan kemudian menambahkannya ke elemen teks. Mereka tidak ada dalam dokumen yang sama, sehingga mereka bekerja dengan baik. Pro Dan Kontra Dari Svg Karena format berbasis vektor, XML-nya, SVG tidak menurunkan atau bergantung pada resolusi, membuatnya mudah untuk diubah ukurannya. CSS dan/atau JavaScript dapat digunakan untuk memanipulasi dan menganimasikan SVG dengan mudah. Karena SVG menggunakan lebih sedikit memori dan membutuhkan lebih sedikit waktu untuk memuat daripada JPG, JPEG, PNG, dan format lainnya, ini sangat ideal untuk desain yang responsif. SVG, selain menjadi format file serbaguna, mendukung animasi dan transparansi. Hanya ada satu masalah dengan menggunakan format ini: format ini tidak digunakan secara luas seperti format standar lainnya seperti PNG, sehingga tidak selalu semudah mengunggah ke situs Anda dan menampilkannya dengan benar, dan tidak selalu kompatibel dengan browser lama dan perangkat.Apakah Bergantung pada Javascript Svg?Karena sifatnya yang primitif, ini sangat responsif, tetapi tidak memiliki kemampuan rendering teks dan interaksi apa pun dengan elemen bergantung pada JavaScript. Gambar berbasis vektor dapat diubah ukurannya tanpa menimbulkan fuzz (walaupun memerlukan kompresi). Setiap bentuk yang digambar terdiri dari objek di SVG.Html Ke Javascript SvgMenggunakan JavaScript, dimungkinkan untuk mengonversi HTML ke SVG. Ini dapat dilakukan dengan menggunakan perpustakaan seperti canvg. Dengan canvg, dimungkinkan untuk mengurai dan merender dokumen SVG dari dalam halaman HTML. Ini memungkinkan integrasi grafik vektor dengan teknologi web lainnya. Kita akan membahas cara membuat grafik vektor skalar (SVG) muncul di halaman dalam tutorial ini. Halaman HTML dapat memiliki dialek XML yang menampilkan informasi dalam bentuk gambar HTML atau deklarasi XML. Pada artikel ini, kita akan membandingkan dan membedakan sintaks JavaScript untuk memasukkan dan memodifikasi elemen HTML versus sintaks SVG untuk memasukkan dan memodifikasi elemen HTML. Kita akan melihat contoh kasus penggunaan sebelum mengembangkan metode kita. Elemen sederhana, seperti >div, harus bisa ditambahkan ke SVG. Metode createSVG digunakan dua kali dalam contoh berikut. Kita dapat mengontrol SVG dengan HTML dan CSS, secara halus, dengan menggunakan JavaScript dan CSS. Metode document.createElementNS yang kita gunakan terdiri dari dua parameter: document.createElementNS dan document.createElementNS. Salah satu variabel yang digunakan untuk menunjukkan objek yang akan dilewatkan adalah o. Akibatnya, untuk menemukan huruf besar dan menggantinya dengan tanda hubung (-) diikuti dengan huruf kecil, kami menggunakan ekspresi reguler /[AZ]/g, yang menggunakan objek camelCase dan sintaks tanda hubung untuk menemukan huruf besar dan menggantinya dengan tanda hubung (-). Segera setelah elemen dikembalikan, yang harus kita lakukan adalah mengembalikannya sebagai elemen tambahan.Svg Dalam Javascript: Yang Perlu Anda KetahuiBagaimana cara menggunakan SVG di JavaScript? Karena setiap komponen gambar adalah salah satu yang dapat ditata dengan CSS atau ditulis dengan JavaScript, mereka membuat alat penataan/skrip yang fantastis. Bagaimana Anda membuat kode svg dalam HTML? Gambar dapat ditulis langsung ke dokumen HTML dengan menggunakan tag svg>/svg>. Langkah-langkah berikut diperlukan jika Anda ingin menggunakan gambar SVG di dokumen HTML Anda: buka gambar di kode VS atau IDE pilihan Anda, salin kodenya, dan tempel di elemen body. Mengapa HTML sva masih digunakan? Butuh beberapa waktu, tetapi Silverlight sekarang didukung secara luas di semua browser dan perangkat utama. File SVG sangat kecil, dapat dicari, dapat dimodifikasi – melalui kode, dan dapat diskalakan, selain menjadi sangat kecil, dapat dicari, dapat dimodifikasi, dan dapat dimodifikasi. Perangkat serbaguna ini dapat digunakan dalam berbagai ukuran dan kompatibel dengan HTML (membuat situs tetapi tidak ingin membuat kode) hanya dengan mengklik gambar atau sebaris. Anda bisa mendapatkan starter kit gratis untuk mobil Anda. Aplikasi XML seperti SVG dapat menggunakan XML 1.0, serta XML Namespaces. Ketika konten SVG disertakan dalam dokumen HTML, sintaks HTML mungkin berlaku dan mungkin tidak kompatibel dengan XML.Contoh Javascript SvgAda banyak contoh penggunaan JavaScript dengan SVG. Misalnya, Anda dapat menggunakan JavaScript untuk memperbarui posisi, ukuran, atau atribut lain dari elemen SVG secara dinamis. Anda juga dapat menggunakan JavaScript untuk menganimasikan elemen SVG. Grafik vektor dapat direntangkan menggunakan teknik yang dikenal sebagai Scalable Vector Graphics. Extensible Markup Language (XML) adalah jenis format gambar yang unik untuk grafik berbasis vektor. Gambar SVG dapat digunakan dalam berbagai cara di CSS dan HTML. Kita akan mempelajari enam teknik berbeda dalam tutorial ini. Dalam pelajaran ini, kami akan menunjukkan cara menggunakan sva sebagai latar belakang CSS. Dalam hal ini, file .htaccess harus dimuat menggunakan sintaks yang sama dengan dokumen HTML. Namun, dalam hal ini, alih-alih HTML, kami menggunakan CSS untuk melakukan lebih banyak penyesuaian. Anda juga dapat menambahkan gambar ke situs web dengan menggunakan elemen HTML HTML. Dimungkinkan untuk menggunakan opsi >object> di semua browser yang mendukung Scalable Vector Graphics (SVG). Dalam HTML dan CSS, elemen HTML dalam sintaks <embedsrc=happy.svg” /> dapat digunakan untuk menyertakan gambar. Sebagian besar browser modern tidak lagi mendukung >plugin browser, jadi andalkan >embed[/gt; umumnya bukan ide yang bagus.Mengonversi Gambar Ke Svg Untuk Grafik Web Kualitas Lebih BaikJika Anda tidak nyaman menulis kode SVG, ada sejumlah alat daring yang dapat membantu Anda mengonversi gambar ke format yang dapat diakses oleh web browser. Canvas.js, yang sebelumnya tersedia di Chrome, Firefox, dan Opera, adalah salah satu yang paling populer. Membuat Gambar Svg Secara Dinamis Di Javascript Menggunakan JavaScript, dimungkinkan untuk membuat gambar SVG secara dinamis. Ini bisa dilakukan dengan membuat objek XMLHttpRequest() baru dan mengatur responseType ke "text/xml". Setelah objek dibuat, metode open() dapat digunakan untuk membuka koneksi ke file SVG eksternal. Acara onload dapat digunakan untuk menjalankan fungsi panggilan balik yang mem-parsing file SVG dan membuat objek XMLDocument. Terakhir, metode createElementNS() dapat digunakan untuk membuat elemen gambar SVG. Tutorial ini akan mengajarkan cara membuat elemen dinamis dengan sva. Dokumentasi MDN menyatakan bahwa http://www.w3.org/2000/svg adalah sintaks untuk file svg. Elemen yang kita buat – persegi, teks, lingkaran, dan seterusnya – harus memenuhi syarat namanya. Kami tidak mempedulikannya, karena parameter opsi opsional tidak relevan. Apa itu atribut presentasi, CSS, dan gaya sebaris? Kita dapat memilih atribut atau gaya sebaris sebagai opsi menggunakan alat GreenSock. CSS dapat digunakan untuk memanipulasi atribut seperti cy, cy, r, dan seterusnya di browser modern. Kemungkinan besar, Anda ingin menggunakan properti CSS (stylesheet atau gaya inline) sebanyak mungkin. Pada artikel ini, saya akan membahas cara membuat elemen dinamis menggunakan HTML, CSS, dan atribut presentasi. Kami akan menggunakan variabel untuk menentukan jumlah persegi panjang, lebar, dan tinggi yang kami inginkan untuk dimiliki oleh svg. Akan ada properti geometri baru yang disertakan dalam versi perangkat lunak yang akan datang, dijuluki SVG2, tetapi saya tidak dapat berbicara banyak tentangnya karena belum dirilis. Kami ingin melihat elemen-elemen ini beraksi sehingga kami dapat mengukur efisiensinya. Alat clip-path dapat digunakan untuk menambahkan elemen dinamis ke root SVG. Dalam demonstrasi ini, kita akan membuat versi coretan dari lingkaran warna dasar dan menambahkannya ke grup, memungkinkan kita untuk segera menampilkannya. Setiap persegi panjang yang dipotong memiliki tween dari 100 dan akan ditempatkan di bawah lingkaran tempat dipotong. Ketika playhead dibalik, itu menyebabkan tween juga terbalik. Karena kita mengklik di awal tween, tidak ada yang terjadi pada saat itu. Tween kemudian ditransfer ke animasi kami. Untuk mendemonstrasikan bagaimana pengukur angka dibuat, saya menggunakan lingkaran dalam bergelombang dan lingkaran luar. Loop bagian dalam membuat lima garis vertikal dengan memanggil fungsi makeLine(), sementara loop bagian luar membuat angka di atas tanda centang yang lebih tinggi dengan memanggil fungsi makeNumber(). Hal ini memungkinkan Anda untuk menyesuaikan hal-hal dengan cepat dan tidak harus kembali ke perangkat lunak vektor.Membuat Sebuah Viewport Svg Sebuah viewport adalah area persegi panjang di mana dokumen SVG dapat dilihat. Setel atribut viewBox dari elemen svg> ke daftar empat angka: min-x, min-y, min-width, dan min-height. Posisi dan dimensi viewport SVG ditentukan oleh atribut viewBox, yang didefinisikan di ruang pengguna. Atribut viewBox mewakili empat angka: min-x, min-y, lebar, dan tinggi. Area pandang diwakili oleh min-x di angka pertama. Angka kedua menentukan posisi paling atas viewport, min-y. Lebar area pandang di ruang pengguna ditentukan dalam angka ketiga, lebar. Nilai keempat, tinggi, menentukan ketinggian area pandang di ruang pengguna. Area pandang dapat digambar dengan terlebih dahulu membuat elemen dengan atribut viewBox, diikuti dengan menyetel nilainya ke nilai area pandang. Anda kemudian dapat menggunakan metode draw() elemen svg> untuk menggambar objek. Atur atribut viewBox elemen svg> menjadi empat angka: min-x, min-y, min-z, dan height-x.Elemen SVG adalah elemen grafis yang dapat ditambahkan ke dokumen HTML5. Mereka dapat digunakan untuk membuat garis, bentuk, dan gambar, dan dapat disesuaikan dengan CSS.