我正在使用npm install --save tinify
然后使用nodejs上传我的图像文件,但我的系统中需要压缩的.zip文件。
上传后我在https://tinypng.com上通过浏览器上传我的图片文件时,会显示完美的下载选项。但是我们怎样才能通过nodejs做到这一点?
这是我的代码:
var tinify = require("tinify");
tinify.key = "myRightApiCode";
var fs = require("fs");
fs.readFile("C:/Users/sourav/images/pgL_NA-10005_5.jpg", function(err,
sourceData) {
if (err) throw err;
tinify.fromBuffer(sourceData).toBuffer(function(err, resultData) {
if (err) throw err;
// ...
console.log(resultData);
//need compressed file in my system
});
});
答案 0 :(得分:1)
您可以使用tinify的方法立即转换和写入压缩图像:
var sourceFile = tinify.fromFile("uncompressed.jpg");
sourceFile.toFile("compressed.jpg");
或者在你的方法中尝试:
var tinify = require("tinify");
tinify.key = "myRightApiCode";
var fs = require("fs");
fs.readFile("C:/Users/sourav/images/pgL_NA-10005_5.jpg", function(err,
sourceData) {
if (err) throw err;
tinify.fromBuffer(sourceData).toBuffer(function(err, resultData) {
if (err) throw err;
fs.writeFile('C:/Users/sourav/images/optimized.jpg', resultData, function (err) {
if (err) throw err;
console.log('It\'s saved!');
});
});
});
希望这能解决您的疑问:)