JSZip と NodeJS を使用して画像を圧縮したいのですが、うまくいきません。.txt のような単純なファイルで動作します...しかし、画像では動作せず、理由がわかりません...
私のコード:
var newFileName = pathDir + '/' + id + '.jpg';
fs.readFile(newFileName, function(err, data) {
zip.file(id+'.jpg', data, {base64: true});
});
試す:
var newFileName = pathDir + '/' + id + '.jpg';
var data = fs.readFileSync(newFileName);
zip.file(id+'.jpg', data, {base64: true});
あなたの場合、チャンクデータを使用してzipインスタンスのid.jpgファイルを何度も上書きします...
// create a file
zip.file("hello.txt", "Hello[p my)6cxsw2q");
// oops, cat on keyboard. Fixing !
zip.file("hello.txt", "Hello World\n");
hello.txt の内容は、"Hello[p my)6cxsw2qHello World\n" ではなく、"Hello World\n" です。それが役に立てば幸い。