emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: imagemagick support on W32


From: Christoph
Subject: Re: imagemagick support on W32
Date: Thu, 30 Sep 2010 20:58:47 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.9) Gecko/20100915 Thunderbird/3.1.4

On 9/30/2010 8:32 PM, Christoph wrote:

Where is init_imagemagick_functions defined?

And if it is missing...does something like this come close?

#ifdef HAVE_NTGUI

DEF_IMGLIB_FN (MagickWandGenesis);
DEF_IMGLIB_FN (GetMagickList);
DEF_IMGLIB_FN (NewMagickWand);
DEF_IMGLIB_FN (MagickSetResolution);
DEF_IMGLIB_FN (MagickPingImage);
DEF_IMGLIB_FN (MagickGetNumberImages);
DEF_IMGLIB_FN (DestroyMagicWand);
DEF_IMGLIB_FN (CloneImageInfo);
DEF_IMGLIB_FN (AcquireExceptionInfo);
DEF_IMGLIB_FN (ReadImage);
DEF_IMGLIB_FN (CatchException);
DEF_IMGLIB_FN (NewMagickWandFromImage);
DEF_IMGLIB_FN (MagickGetImageHeight);
DEF_IMGLIB_FN (MagickGetImageWidth);
DEF_IMGLIB_FN (MagickScaleImage);
DEF_IMGLIB_FN (MagickPingImageBlob);
DEF_IMGLIB_FN (MagickReadImageBlob);
DEF_IMGLIB_FN (NewPixelWand);
DEF_IMGLIB_FN (PixelSetColor);
DEF_IMGLIB_FN (MagickRotateImage);
DEF_IMGLIB_FN (MagickCropImage);
DEF_IMGLIB_FN (NewPixelIterator);
DEF_IMGLIB_FN (PixelGetMagickColor);
DEF_IMGLIB_FN (DestroyPixelIterator);

static int
init_imagemagick_functions (Lisp_Object libraries)
{
  HMODULE library;

  /* Try loading ImageMagick library under probable names.  */
  if (!(library = w32_delayed_load (libraries, Qimagemagick)))
    return 0;

  LOAD_IMGLIB_FN (library, MagickWandGenesis);
  LOAD_IMGLIB_FN (library, GetMagickList);
  LOAD_IMGLIB_FN (library, NewMagickWand);
  LOAD_IMGLIB_FN (library, MagickSetResolution);
  LOAD_IMGLIB_FN (library, MagickPingImage);
  LOAD_IMGLIB_FN (library, MagickGetNumberImages);
  LOAD_IMGLIB_FN (library, DestroyMagicWand);
  LOAD_IMGLIB_FN (library, CloneImageInfo);
  LOAD_IMGLIB_FN (library, AcquireExceptionInfo);
  LOAD_IMGLIB_FN (library, ReadImage);
  LOAD_IMGLIB_FN (library, CatchException);
  LOAD_IMGLIB_FN (library, NewMagickWandFromImage);
  LOAD_IMGLIB_FN (library, MagickGetImageHeight);
  LOAD_IMGLIB_FN (library, MagickGetImageWidth);
  LOAD_IMGLIB_FN (library, MagickScaleImage);
  LOAD_IMGLIB_FN (library, MagickPingImageBlob);
  LOAD_IMGLIB_FN (library, MagickReadImageBlob);
  LOAD_IMGLIB_FN (library, NewPixelWand);
  LOAD_IMGLIB_FN (library, PixelSetColor);
  LOAD_IMGLIB_FN (library, MagickRotateImage);
  LOAD_IMGLIB_FN (library, MagickCropImage);
  LOAD_IMGLIB_FN (library, NewPixelIterator);
  LOAD_IMGLIB_FN (library, PixelGetMagickColor);
  LOAD_IMGLIB_FN (library, DestroyPixelIterator);

  return 1;
}

#endif /* HAVE_NTGUI */


Note: I wasn't sure about the #else clause for HAVE_NTGUI. Looks like for other image libraries the function names are aliased with fn_FUNCTIONNAME?

Christoph



reply via email to

[Prev in Thread] Current Thread [Next in Thread]