使用JSZip和NodeJS压缩现有图像

时间:2014-09-30 14:02:49

标签: node.js jszip

我想使用JSZip和NodeJS来压缩图像,但它不起作用,它适用于像.txt这样的简单文件......但是使用图像它不起作用我不知道为什么...

我的代码:

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

1 个答案:

答案 0 :(得分: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 World \ n"而不是"你好[p my] 6cxsw2qHello World \ n"。希望它有所帮助。