CImg:无法识别jpg格式

PSl*_*yer 3 c++ windows codeblocks cimg

#include <iostream>
#include <stdlib.h>
#include "CImg.h"

using namespace cimg_library;
using namespace std;

int main(){
CImg<unsigned char> image("lena.jpg"), visu(500,400,1,3,0);

const unsigned char red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 };



return 0;}
Run Code Online (Sandbox Code Playgroud)

当我编译此代码时出现错误:CImg :: load():无法识别文件格式"lena.jpg"出现.任何建议?

我安装了imageMagick,但错误仍然存​​在.

小智 6

要在CImg中启用本机JPG文件支持,请先将其包括在内CImg.h:

#define cimg_use_jpeg
#include "CImg.h"
....
Run Code Online (Sandbox Code Playgroud)

并将您的代码链接到libjpeg库.它对我来说完美无瑕.如果你不使用它,CImg将尝试外部调用ImageMagick的转换工具来加载文件,这不是最干净的解决方案.在CImg中使用libjpeg肯定更好.对于其他图像格式(tiff,png,...)也是如此.