emacs-devel
[Top][All Lists]
Advanced

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

Re: imagemagick support on W32


From: Juanma Barranquero
Subject: Re: imagemagick support on W32
Date: Fri, 1 Oct 2010 05:16:55 +0200

On Fri, Oct 1, 2010 at 04:58, Christoph <address@hidden> wrote:

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

Yes, something like that, assuming you're trying to use ImageMagick
DLLs and not linking statically.

> 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?

The code in image.c calls the image functions through the fn_ function
"pointers".

On HAVE_NTGUI, macros DEF_IMGLIB_FN and LOAD_IMGLIB_FN create and set
such pointers. On ! HAVE_NTGUI, such pointers are simply redefined to
refer to the original, statically linked functions.

So, the code that currently calls ImageMagick functions directly, like
NewMagickWand, MagickPingImage, etc, should be changed to call
fn_NewMagickWand, fn_MagickPingImage, etc.

One issue:

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

You'll have to add the imagemagick libraries to image-library-alist,
of course. But, what is the intention of ImageMagick here? To
substitute libpng, jpeglib, etc? If so, something will have to be done
with respect to image-type-available-p (or, more specifically,
init-image-library) so Emacs "knows" that png, jpeg, tiff, etc are
really available.

But perhaps I'm misinterpreting the intention of ImageMagick?

Hope this helps,

    Juanma



reply via email to

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