Menggunakan JavaScript untuk mengambil tangkapan skrin, di sini saya ingin mengesyorkan dua komponen sumber terbuka: satu ialah Canvas2Image, yang boleh memprogram lukisan Kanvas ke dalam imej PNG/JPEG/BMP tetapi ia tidak mencukupi sahaja, kita perlu memberi Untuk mengambil tangkapan skrin mana-mana DOM (sekurang-kurangnya kebanyakannya), anda memerlukan html2canvas, yang boleh menukar objek DOM menjadi objek kanvas. Menggabungkan fungsi kedua-duanya, anda boleh tangkapan skrin DOM pada halaman ke dalam imej PNG atau JPEG, yang sangat keren.
Imej Kanvas2
Prinsipnya ialah menggunakan objek kanvas HTML5 untuk menyediakan API toDataURL():
Walau bagaimanapun, terdapat banyak kelemahan semasa Contohnya, Opera dan Safari pada masa ini hanya menyokong PNG, manakala FireFox mempunyai sokongan yang lebih baik.
Terdapat dua cara untuk menjana imej dan menulisnya ke dalam halaman Satu ialah menjana objek imej dan menulisnya ke dalam pepohon DOM halaman Ini juga merupakan cara yang lebih menyokong:
html2kanvas
Ia bertindak pada proses pemuatan DOM, mengumpul maklumat dan kemudian melukis imej kanvas Dalam erti kata lain, ia sebenarnya tidak memotong pokok DOM yang dipaparkan kepada imej kanvas, tetapi melukis semula kanvas berdasarkan pokok DOM. gambar. Oleh itu, banyak gaya CSS tidak dapat dikenali dengan tepat dan tidak dapat digambarkan dengan tepat pada imej.Terdapat banyak sekatan lain, seperti:
●Javascript mesti berada dalam domain yang sama Untuk situasi merentas domain, pelayan proksi perlu digunakan (terdapat parameter dalam API yang boleh dinyatakan begitu juga untuk imej; ●Pokok DOM dalam bingkai tidak boleh dilukis dengan tepat; ●Oleh kerana lukisan itu adalah kanvas, penyemak imbas seperti IE8 perlu menggunakan perpustakaan pihak ketiga seperti
Contoh penggunaan API: