我正在寻找一些通用的库来检查下载的图像是否没有损坏。
我找到了使用ImageMagick的https://www.npmjs.com/package/gm。
我可以使用ImageMagick的identify,它会找到完全损坏的图像(我甚至打不开的那个)。但也有部分损坏的图像-例如,有一半的图像是灰色的jpeg文件,那些没有被通用标记为损坏的图像。
如何在node.js中检查图像是否损坏?
谢谢!
编辑:
我想要检测的是未完全下载的图像。你可以通过剪切图像的最后n个字节来达到类似的效果。
我猜可以通过编程的方式检测到它,因为在详细模式下的identify commend会返回:
identify: Premature end of JPEG file broken_example.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify: Corrupt JPEG data: premature end of data segment broken_example.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.例如(不幸的是imgur会切掉破碎的图片,所以我不得不上传截图):
Broken image
发布于 2019-11-03 21:24:21
使用:https://www.npmjs.com/package/is-corrupted-jpeg
var isCorrupted = require('is-corrupted-jpeg');
console.log(isCorrupted('./path/to/image/not-corrupted.jpg'));
//=> true
console.log(isCorrupted('./path/to/image/corrupted.jpg'));
//=> falsehttps://stackoverflow.com/questions/35085872
复制相似问题