GraphicsMagick
我正在尝试使用 GraphicsMagick 进行屏幕截图。由于某种原因,使用以下代码在捕获的图像中将扩展坞涂黑:
#include <wand/wand_api.h>
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv) {
MagickWand *wand = NULL;
wand = NewMagickWand();
MagickReadImage(wand,"x:root");
MagickWriteImage(wand,"screen_shot_graphicsmagick.jpg");
if(wand){ DestroyMagickWand(wand); }
return 0;
}
ImageMagick
然而,使用 ImageMagick,我能够使用以下代码捕获屏幕而没有任何明显的问题,这只是添加/修改了几行:
#include <wand/MagickWand.h>
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv) {
MagickWandGenesis();
MagickWand *wand = NULL;
wand = NewMagickWand();
MagickReadImage(wand,"x:root");
MagickWriteImage(wand,"screen_shot_imagemagick.jpg");
if(wand){ DestroyMagickWand(wand); }
MagickWandTerminus();
return 0;
}
我在 Ubuntu 13.04 操作系统上运行它。有人可以指出我在这里做错了什么,或者为什么 GraphicsMagick 会关闭扩展坞吗?