我尝试使用了所有支持灰度处理的npm包,但是没有一个能正常工作。 其中一些可以工作,但质量会降低。 有一个很好的灰度处理包叫做image-grayscale,但问题在于如果其中一个src图像文件(例如/image.gpg)损坏,则根据promise代码停止继续执行。 下面的代码就是问题所在。
globby(['./upload/*.*','!./upload/*.ico','!./upload/*.gif', '!./upload/*.txt']).then(function (paths) {
return Promise.all(paths.map(function (e) {
return imageGrayScale(e, {logProgress: 1}) }));
}).then(function (val) {
// if one of the file in directory is corrupted then promise is rejected and my code stooped and i cant do anything further
})
请告诉我如何处理错误承诺以让代码继续执行下去。或者是否有类似回调的解决方案。
我应该前往其他模块,还是可以编写自己的算法来实现灰度?请告诉我如何将图像的颜色转换为黑白。