+2012-02-07 Glenn Morris <rgm@gnu.org>
+
+ * display.texi (ImageMagick Images):
+ Move most details of imagemagick-render-type to the variable's doc.
+
2012-02-06 Glenn Morris <rgm@gnu.org>
* keymaps.texi (Tool Bar): Mention separators.
For example, if you never want to use the ImageMagick loader to use
JPEG files, add @code{JPG} to this list.
+@c Not sure this should even be in the manual at all.
@vindex imagemagick-render-type
-You can set the variable @code{imagemagick-render-type} to choose
-between screen render methods for the ImageMagick loader. The options
-are: @code{0}, a conservative method which works with older
-@c FIXME details of this "newer method"?
-@c Presumably it is faster but may be less "robust"?
-ImageMagick versions (it is a bit slow, but robust); and @code{1},
-a newer ImageMagick method.
+If you wish to experiment with the performance of the ImageMagick
+loader, see the variable @code{imagemagick-render-type}.
Images loaded with ImageMagick support a few new display specifications:
+2012-02-07 Glenn Morris <rgm@gnu.org>
+
+ * cus-start.el (imagemagick-render-type): Add it.
+
2012-02-06 Lars Ingebrigtsen <larsi@gnus.org>
* progmodes/cc-mode.el
:set custom-set-minor-mode)
;; fringe.c
(overflow-newline-into-fringe fringe boolean)
+ ;; image.c
+ (imagemagick-render-type image integer "24.1")
;; indent.c
(indent-tabs-mode indent boolean)
;; keyboard.c
(fboundp 'x-selection-exists-p))
((string-match "fringe" (symbol-name symbol))
(fboundp 'define-fringe-bitmap))
+ ((string-match "\\`imagemagick" (symbol-name symbol))
+ (fboundp 'imagemagick-types))
((equal "font-use-system-font" (symbol-name symbol))
(featurep 'system-font-setting))
;; Conditioned on x-create-frame, because that's
+2012-02-07 Glenn Morris <rgm@gnu.org>
+
+ * image.c (imagemagick-render-type): Change it from a lisp object
+ to an integer. Move the doc here from the lisp manual.
+ Treat all values not equal to 0 the same.
+
2012-02-06 Chong Yidong <cyd@gnu.org>
* doc.c (store_function_docstring): Avoid applying docstring of
EMACS_INT ino;
int desired_width, desired_height;
double rotation;
- EMACS_INT imagemagick_rendermethod;
int pixelwidth;
ImageInfo *image_info;
ExceptionInfo *exception;
went ok. */
init_color_table ();
- imagemagick_rendermethod = (INTEGERP (Vimagemagick_render_type)
- ? XINT (Vimagemagick_render_type) : 0);
- if (imagemagick_rendermethod == 0)
+
+ if (imagemagick_render_type == 0)
{
size_t image_height;
}
DestroyPixelIterator (iterator);
}
-
- if (imagemagick_rendermethod == 1)
+ else /* imagemagick_render_type != 0 */
{
/* Magicexportimage is normally faster than pixelpushing. This
method is also well tested. Some aspects of this method are
The function `clear-image-cache' disregards this variable. */);
Vimage_cache_eviction_delay = make_number (300);
#ifdef HAVE_IMAGEMAGICK
- DEFVAR_LISP ("imagemagick-render-type", Vimagemagick_render_type,
- doc: /* Choose between ImageMagick render methods. */);
+ DEFVAR_INT ("imagemagick-render-type", imagemagick_render_type,
+ doc: /* Integer indicating which ImageMagick rendering method to use.
+The options are:
+ 0 -- the default method (pixel pushing)
+ 1 -- a newer method ("MagickExportImagePixels") that may perform
+ better (speed etc) in some cases, but has not been as thoroughly
+ tested with Emacs as the default method. This method requires
+ ImageMagick version 6.4.6 (approximately) or later.
+*/);
+ /* MagickExportImagePixels is in 6.4.6-9, but not 6.4.4-10. */
+ imagemagick_render_type = 0;
#endif
}