我有一个节点应用程序,它接受上传的图像(使用强大的)并将其存储到 Amazon S3 存储桶中。在将其保存到 S3 之前,我想获取图像的宽度、高度等以供将来考虑。我发现这个问题有帮助:Open images on NodeJS and find out width/height
但是,当我尝试使用 imagemagick(或 gm,就此而言,我都尝试过)打开图像时,我收到错误 127。具体来说,imagemagick 报告:
{"timedOut":false,"killed":false,"code":127,"signal":null}
我知道该文件存在(因为它已正确上传到 S3 存储桶),并且我可以通过 fs 对其进行操作(例如,重命名),但我找不到有关错误代码 127 的任何文档来确定 IM 失败的原因。考虑到上传到强大的文件可能有些奇怪导致它无法正确读取,我尝试使用 imagemagick 在同一文件夹中加载一个简单的“test.jpg”图像:
im.identify('test.jpg', function(err, features){
if(!err)
{
// my image processing code
}
else
{
// my err handling code; spits out the error above
}
});
不幸的是,这以完全相同的方式失败,即使我确定 test.jpg 是一个很好且格式正确的图像。
那么,任何人都可以帮助我理解错误 127 是什么以及为什么 ImageMagick 会在 fs 能够很好地读取文件时抛出它......?