这是我第一次了解Cimg
。我正在尝试Cimg
教程中的代码。我收到一条错误消息"undefined reference to SetDIBitsToDevice@48"
。
我正在使用CodeBlocks 17.12
。我已经从Windows工具包链接到gdi32.lib
。我使用了构建器option -> link setting
。它仍然告诉我"undefined reference to SetDIBitsToDevice@48"
。之后,我更改为库"libgdi32.a"
和"gdi32"
,并在"wingdi.h"
文件中添加了头文件"Cimg.h"
。都行不通。
这是http://cimg.eu/reference/group__cimg__tutorial.html
中的代码#include "CImg.h"
using namespace cimg_library;
int main() {
CImg<unsigned char> image("1.jpg"), visu(1920,1080,1,3,0);
const unsigned char red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 };
image.blur(2.5);
CImgDisplay main_disp(image,"Click a point"), draw_disp(visu,"Intensity profile");
while (!main_disp.is_closed() && !draw_disp.is_closed()) {
main_disp.wait();
if (main_disp.button() && main_disp.mouse_y()>=0) {
const int y = main_disp.mouse_y();
visu.fill(0).draw_graph(image.get_crop(0,y,0,0,image.width()-1,y,0,0),red,1,1,0,255,0);
visu.draw_graph(image.get_crop(0,y,0,1,image.width()-1,y,0,1),green,1,1,0,255,0);
visu.draw_graph(image.get_crop(0,y,0,2,image.width()-1,y,0,2),blue,1,1,0,255,0).display(draw_disp);
}
}
return 0;
}
除了在头上添加#define cimg_display 0
之外,我如何编译它?