Estoy tratando de comprimir algún tipo de imágenes.
const handleZip = async (e) => { e.preventDefault(); const zip = new JSZip(); const folder = zip.folder(storeName); for (let i = 0; i < QRCodes.length; i++) { folder.file(`${i + 1}.jpg`, QRCodes[i]); } zip.generateAsync({ type: "blob" }).then((content) => { FileSaver.saveAs(content, `${storeName}.zip`); });};
El resultado es StoreName.zip>StoreNameFolder>20 imágenes en formato jpg
y estas imágenes no funcionan, está corrupto. También intenté cambiar los datos de la imagen con una URL de imagen en Internet, pero el resultado fue el mismo.
He resuelto el problema con esto;
const base64String = QRCodes[i].replace("data:", "").replace(/^.+,/, ""); folder.file(`${i + 1}.png`, base64String, { base64: true });