尝试上载任何GIF文件时,发生奇怪的错误。出现此错误:
Unsupported MIME type: image/gif
Unsupported MIME type: image/gif
Unsupported MIME type: image/gif
Unsupported MIME type: image/gif
Unsupported MIME type: image/gif
Unsupported MIME type: image/gif
Unsupported MIME type: image/gifUnsupported MIME type: image/gif
Unsupported MIME type: image/gifUnsupported MIME type: image/gif
C:\Users\Azmin\Desktop\amin-website\node_modules\uploadfs\lib\image\jimp.js:46 var originalWidth = image.bitmap.width;
^
TypeError: Cannot read property 'bitmap' of undefined
at Jimp.<anonymous> (C:\Users\Azmin\Desktop\amin-website\node_modules\uploadfs\lib\image\jimp.js:46:35)
at Jimp.throwError (C:\Users\Azmin\Desktop\amin-website\node_modules\jimp\index.js:85:44)
at ReadFileContext.callback (C:\Users\Azmin\Desktop\amin-website\node_modules\jimp\index.js:201:44)
at FSReqWrap.readFileAfterOpen [as oncomplete] (fs.js:420:13)
有什么解决办法吗?
答案 0 :(得分:0)
通过uploadfs
模块,Apostrophe支持多个后端来处理图像。默认情况下,您得到jimp
。 jimp
很有帮助,因为它是纯JavaScript且不依赖于系统软件包,但它也非常慢,并且Apostrophe的uploadfs模块中当前的版本不支持GIF。
升级uploadfs中的jimp并测试结果将是一个不错的请求,但是有一个更好的长期解决方案为您服务。 Apostrophe之所以只使用jimp,是因为它找不到imagemagick
,它速度更快并且完全支持GIF。
解决方案是在开发环境和服务器上都安装imagemagick
。这很容易做到。
在Ubuntu Linux中:
sudo apt-get install imagemagick
在Red Hat风格的Linux中,例如CentOS:
sudo yum install ImageMagick
在MacOS中:
(如果尚未安装homebrew,请先安装。肯定要在Mac上进行开发的homebrew。)
brew install imagemagick
在Windows上:there is an official installer.,您需要确保选中相应的框以安装“传统实用程序”,例如identify
和convert
。您还需要确保它们在您的PATH
中结束,以便在命令行中可以找到它们(在cmd提示符下键入convert
应该运行该imagemagick实用程序)。然后确保重新启动要测试的cmd窗口,以确保它们看到该路径已更改。