Baru -baru ini dalam proyek, fungsi mengunduh gambar diperlukan (seperti yang ditunjukkan di bawah)
Pada awalnya pertimbangkan menggunakan atribut unduhan tag untuk diunduh:
<A href = gambar src download = download poster> unduh poster </a>
Namun, setelah pengujian, saya menemukan bahwa di Safari, file yang diunduh tidak dapat dibawa ke nama ekspansi, jadi saya harus mengubah pikiran saya dan menggunakan kanvas untuk diproses.
1. Gambar perlu menambahkan crossorigin = 'anonim' untuk mengatur atribut silang -domain dari gambar
img.crossorigin = 'anonim';
2. Gunakan Todataurl untuk mengonversi gambar ke format Base64
Canvas.todataurl (gambar/png)
3. Gunakan acara klik analog untuk memicu unduhan
var save_link = createelement ('a'); ;
Kode Lengkap:
var canvas = $ ('. Canvas'); Function () {var _w = img.naturalwidth; '); .src = 'http://n.sinaimg.cn/transform/20170825/nzi3- fykiu fe6650492.jpg';}
Di atas adalah semua isi artikel ini.