1
이미지를 그레이 스케일로 변환하고 품질을 낮추기 위해 JIMP를 사용하고 있습니다. 그러나 2 %의 경우 이미지가 손상되어 콘솔에 오류가 발생했습니다. "오류 : Parser._parseSignature에서 잘못된 파일 서명 (C : \ 사용자 \하기 Akshay \ 바탕 화면 \ 다윈 \ node_modules \ pngjs \ lib 디렉토리 \ parser.js : 50 : 18) " 다음 경우 문제가있는 코드 :JIMP의 노드 j에서 유효하지 않은 파일 서명
var ext=path.extname(dest);
if(ext!='.jpg'){
dest=replaceExt(dest, '.jpg');
}
console.log(path.extname(dest));
var file = fs.createWriteStream(dest);
////console.log(url)
if(url.indexOf('https')!=-1){
//console.log("https")
var request = https.get(url, function(response) {
response.pipe(file);
file.on('finish', function() {
Jimp.read(dest).then(function (lennaa) {
lennaa.resize(256, 256) // resize
.quality(90) // set JPEG quality
.greyscale() // set greyscale
.write(dest); // save
}).catch(function (err) {
console.error(err);
});
file.close(cb); // close() is async, call cb after close completes.
});
}).on('error', function(err) { // Handle errors
fs.unlink(dest); // Delete the file async. (But we don't check the result)
if (cb) cb(err.message);
});
}