Avec le mode doc-view d'Emacs, je peux facilement réduire / zoomer / etc les fichiers PDF, cependant, j'aimerais pouvoir faire la même chose avec les images. Actuellement, lorsque j'ouvre une image, je ne peux pas régler le niveau de zoom pour l'adapter au cadre. Je sais qu'il y a image-mode-fit-frame
, cependant, cela n'aide pas lorsque l'image est plus grande que mon écran.
Existe-t-il un package ou un mode qui me permettra d'effectuer un zoom avant ou arrière sur une image?
la source
eimp
modifie le fichier. Cela ne fonctionne pas sur les images en lecture seule.Solution
J'ai utilisé le code source
lisp/image-mode.el
pour écrire ceci. L'appel de cette fonction dans n'importe quel tampon d'image la redimensionnera pour s'adapter à la largeur ou à la hauteur en fonction des rapports hauteur / largeur de l'image et de la fenêtre.Vous avez besoin de ces 2 choses pour que cette fonction fonctionne:
libjpeg
chargeur est utilisé pour gérer lesjpg
images. Le hack montré dans la partie suivante de cette réponse est utilisé pour forcer emacs à utiliser leimagemagick
chargeur.Hack pour forcer emacs à utiliser
imagemagick
pour charger des imagesAprès avoir suivi les rapports de bogues emacs
#18797
,#10746
et#10112
, la solution suivante a fonctionné pour forcer Imagemagick à charger des images; mettez-le quelque part dans votreinit.el
:Je l' ai forcé emacs à utiliser
imagemagick
uniquement pour les fichiers d' images familières moi:png
,tiff
,jpg/jpeg
etsvg
; les autres sont conservés par défaut. J'ai choisi d'autorisergif
l'ouverture des fichiers par le chargeur par défaut car emacs 24.4 a amélioré la prise en charge de la visualisation d'images multi-images. L'ensemble de l'expression rationnelle est extrait delisp/image.el
.Inconvénient
imagemagick
n'apparaîtront pas comme des images en ligne dansorg-mode
.Les références
image-transform-fit-to-width
image-transform-fit-to-height
#18797
,#10746
,#10112
la source
image-transform-set-scale
peut être ce que vous recherchez. Cependant, il nécessite qu'Emacs soit compilé avec le support d'Imagemagick.Il y a aussi un commentaire
image-transform-mode
dansimage-mode.el
"Pas encore implémenté".la source
Does Emacs use imagemagick? yes
en courant./configure
. Il a donc compilé avec imagemagick. La transformation d'images fixes ne fonctionne pas pour moi. (Sur emacs 24,4 x86_64-unknown-linux-gnu) J'ai aussi ce qui suit dansconfig.log
:| #define HAVE_IMAGEMAGICK 1
| #define HAVE_MAGICKEXPORTIMAGEPIXELS 1
| #define HAVE_MAGICKMERGEIMAGELAYERS 1
.Voici une solution qui vous permet de monter et descendre en utilisant les mêmes touches que celles utilisées pour la mise à l'échelle du texte, Cx C- = et Cx C--
la source