Javascript 如何在Node.js中检测损坏的图像文件?
我正在寻找一些通用库来检查下载的图像是否没有损坏 我找到了使用ImageMagick的 我可以使用ImageMagick中的Javascript 如何在Node.js中检测损坏的图像文件?,javascript,node.js,image-processing,png,jpeg,Javascript,Node.js,Image Processing,Png,Jpeg,我正在寻找一些通用库来检查下载的图像是否没有损坏 我找到了使用ImageMagick的 我可以使用ImageMagick中的识别,它将发现完全损坏的图像(我甚至无法打开的图像)。但也有部分损坏的图像-例如jpeg文件,其中一半图像为灰色,并且这些图像未被gm标记为损坏 如何在node.js中检查图像是否损坏 谢谢 编辑: 我想检测的是未完全下载的图像。通过剪切图像的最后n个字节可以实现类似的效果 我想可以通过编程方式检测它,因为详细模式下的identify返回: identify: Premat
识别
,它将发现完全损坏的图像(我甚至无法打开的图像)。但也有部分损坏的图像-例如jpeg文件,其中一半图像为灰色,并且这些图像未被gm标记为损坏
如何在node.js中检查图像是否损坏
谢谢
编辑:
我想检测的是未完全下载的图像。通过剪切图像的最后n个字节可以实现类似的效果
我想可以通过编程方式检测它,因为详细模式下的identify返回:
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会切掉损坏的图像,所以我不得不上传截图):
使用:
var isCorrupted=require('is-corrupted-jpeg');
log(isCorrupted('./path/to/image/not corrupted.jpg');
//=>正确
log(isCorrupted('./path/to/image/corrupted.jpg');
//=>错误
这些图像是否首先可以通过编程方式识别为已损坏?也许上传一个例子……谢谢你的评论。我编辑了一个错误的postA照片,但这并不能帮助我们修复错误(坏字节)。。。请使用一些免费的文件共享网站(如)并将文件上传到那里。或者您可以通过打开文件(仅复制范围为00到0f的蓝色中间部分),然后将这些字节值粘贴到并共享链接。无论采用哪种方法,请上传(1)完全损坏和(2)部分损坏的示例?PS:如果您愿意尝试PHP(安装了吗?)而不是Node.js,那么我将尝试向您展示一种可能的解决方案。这意味着使用PHP读取文件的字节并检查错误。只需要两个例子,首先看看我们在寻找什么。。。