在 VS2010 中配置 ImageMagick 开发环境,以 gif2bmp 为例

为了在 Windows 中 C 语言使用 ImageMagick 的相关功能,需要在 Visual Studio 2010 中配置开发环境。

  1. 从官网下载 Windows 版本,在 这个页面 的最下方

  2. 双击安装,到「Select Additional Tasks」页面时,勾选「Install development headers and libraries for C and C++」

  3. 安装完后确认一下安装位置,可以通过 Everything 或者系统搜索来定位 MagickWand.h 文件

  4. 新建一个 Visual Studio 项目,打开项目属性,选「VC++目录」

  5. 在「包含目录」中增加之前所述安装路径中的 include 目录,在「库目录」中增加之前所述安装路径中的 lib 目录。

    1. 点击下拉菜单中的「编辑」按钮
    2. 在弹出的对话框中点击箭头所指的新建按钮,选择相应的目录
  6. 继续在属性页中选择「C/C++」,在「附加包含目录」中添加 lib 目录

  7. 在属性页中选择「链接器」下的「输入」,为其添加「附加依赖项」,分别加入安装路径下 lib 目录中的三个文件的文件名,即

    CORE_RL_Magick++_.lib
    CORE_RL_MagickCore_.lib
    CORE_RL_MagickWand_.lib
  8. stdafx.h 文件中添加两行

    #include "MagickWand/MagickWand.h"
    #include "MagickCore/MagickCore.h"
  9. 在 main 函数中编写代码即可,可以参考 Image MethodsPixel Wand Methods 等 API 页面,比如下述代码可以将 gif 动画的每一帧拆分出来,保存成为独立的 bmp 图像

    MagickWand *magickWand;
    MagickWandGenesis();
    magickWand = NewMagickWand();
    MagickReadImage(magickWand, "1.gif");
    MagickWriteImages(magickWand, "1.bmp", MagickTrue);

直接另存为即可进行拆分,也可以在保存前根据需要加入 MagickSetImageType 之类的操作对图片的格式进行调整。