0

JSZip と NodeJS を使用して画像を圧縮したいのですが、うまくいきません。.txt のような単純なファイルで動作します...しかし、画像では動作せず、理由がわかりません...

私のコード:

var newFileName = pathDir + '/' + id + '.jpg';
fs.readFile(newFileName, function(err, data) {
    zip.file(id+'.jpg', data, {base64: true});
});
4

1 に答える 1

2

試す:

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" です。それが役に立てば幸い。

于 2014-11-21T02:31:39.840 に答える