emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 2d71e68: Restore image scaling support when there's


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] master 2d71e68: Restore image scaling support when there's no native image scaling
Date: Wed, 12 Jun 2019 13:00:52 -0400 (EDT)

branch: master
commit 2d71e68428b10c593da2dd411d70ed2b4a8632c0
Author: Lars Ingebrigtsen <address@hidden>
Commit: Lars Ingebrigtsen <address@hidden>

    Restore image scaling support when there's no native image scaling
    
    * lisp/net/shr.el (shr--image-type): New function.
    (shr-rescale-image): Use it to allow image scaling on Emacsen with
    ImageMagick support that does not have native image scaling support.
---
 lisp/net/shr.el | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/lisp/net/shr.el b/lisp/net/shr.el
index c1e9fdd..a014c56 100644
--- a/lisp/net/shr.el
+++ b/lisp/net/shr.el
@@ -1093,6 +1093,16 @@ element is the data blob and the second element is the 
content-type."
        image)
     (insert (or alt ""))))
 
+(defun shr--image-type ()
+  "Emacs image type to use when displaying images.
+If Emacs has native image scaling support, that's used, but if
+not, `imagemagick' is preferred if it's present."
+  (if (or (and (fboundp 'image-transforms-p)
+              (image-transforms-p))
+         (not (fboundp 'imagemagick-types)))
+      nil
+    'imagemagick))
+
 (defun shr-rescale-image (data content-type width height
                                &optional max-width max-height)
   "Rescale DATA, if too big, to fit the current buffer.
@@ -1122,13 +1132,13 @@ width/height instead."
                (< (* width scaling) max-width)
                (< (* height scaling) max-height))
           (create-image
-           data nil t
+           data (shr--image-type) t
            :ascent 100
            :width width
            :height height
            :format content-type)
         (create-image
-         data nil t
+         data (shr--image-type) t
          :ascent 100
          :max-width max-width
          :max-height max-height



reply via email to

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