下載圖像
利用a標籤,新增download屬性賦予下載功能
1 2 3 | <img src={src} style={<!-- -->{width:100,height:100}}/> <a href={src} download={'下載'}>點選下載圖像</a> |
如何批量下載多個圖像?主動迴圈觸發多個a標籤的點選事件即可
打包成zip下載
用到的第三方庫
- jszip、 jszip官方api和demo
- file-saver
下載庫
- yarn add jszip / npm install jszip
- yarn add file-saver / npm install file-saver
使用 (此處是react版本的,純js或vue版本的大同小異)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | //引入 import JSZip from "jszip"; import { saveAs } from 'file-saver'; //使用 let zip = new JSZip(); //text文字 zip.file("Hello.txt", "Hello World "); //base64格式的圖像 zip.file('exp.png', imgBase64Data,{base64:true}); //生成zip檔案 zip.generateAsync({type:"blob"}) .then(function(content) { // jszip又使用了file-saver進行匯出操作 saveAs(content, "example.zip"); }); |
base64圖像解碼不是有效的 Base-64 字串
- 生成的字串格式形式如下
「data:image/png;base64,iVBORw0KGgo…」 - 在解碼的時候我們是不需要下面的部分
data:image/png;base64, - 你進行次截串,取後面部分就行。