1

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;
}

GraphicsMagick 的截图

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;
}

ImageMagick 的截图

我在 Ubuntu 13.04 操作系统上运行它。有人可以指出我在这里做错了什么,或者为什么 GraphicsMagick 会关闭扩展坞吗?

4

0 回答 0