Con el modo de visualización de documentos de Emacs, puedo reducir / ampliar / etc fácilmente los archivos PDF, sin embargo, me gustaría poder hacer lo mismo con las imágenes. Actualmente, cuando abro una imagen, no puedo ajustar el nivel de zoom para que se ajuste al marco. Sé que image-mode-fit-frame, sin embargo, no ayuda cuando la imagen es más grande que mi pantalla.
¿Hay algún paquete o modo que me permita acercar y alejar una imagen?
fuente

eimpmodifica el archivo. No funciona en imágenes de solo lectura.Solución
Usé el código fuente
lisp/image-mode.elpara escribir esto. Al llamar a esta función en cualquier búfer de imagen, se cambiará su tamaño para que se ajuste al ancho o la altura, dependiendo de la imagen y la relación altura / ancho de la ventana.Necesita estas 2 cosas para que esta función funcione:
libjpegcargador se utiliza para manejarjpgimágenes. El truco que se muestra en la siguiente parte de esta respuesta se usa para obligar a emacs a usar elimagemagickcargador.(defun modi / image-transform-fit-to-window () "Cambia el tamaño de la imagen para que se ajuste al ancho o alto según la imagen y las relaciones de ventana. Se requiere Imagemagick para ejecutar esta función ". (interactivo) (let * ((img-size (image-display-size (image-get-display-property) t)) (ancho de imagen (tamaño de imagen del automóvil)) (img-height (cdr img-size)) (relación img-h / w (/ (altura flotante img) (ancho flotante img))) (win-width (- (enésimo 2 (ventana-dentro-píxeles-bordes)) (enésimo 0 (ventana-dentro-píxeles-bordes)))) (win-height (- (enésimo 3 (ventana-dentro-píxeles-bordes)) (enésimo 1 (ventana-dentro-píxeles-bordes)))) (relación win-h / w (/ (altura de ganancia flotante) (ancho de ganancia flotante)))) ;; Ajuste la imagen por ancho si la relación h / w de la ventana es> relación h / w de la imagen (if (> win-h / w-ratio img-h / w-ratio) (imagen-transformar-ajustar-a-ancho) ;; Otra forma de altura (imagen-transformar-ajustar-a-altura))))Hack para forzar el uso
imagemagickde emacs para cargar imágenesDespués de seguir a través de los informes de errores emacs
#18797,#10746y#10112, la siguiente solución trabajó para forzar Imagemagick a cargar imágenes; ponlo en algún lugar de tuinit.el:Me he obligado a emacs uso
imagemagicksólo para los archivos de imagen familiar para mí:png,tiff,jpg/jpegysvg; El resto se mantiene por defecto. Elegí permitirgifque el cargador predeterminado abra los archivos ya que emacs 24.4 ha mejorado el soporte para ver imágenes de múltiples cuadros. Se toma toda la expresión regular delisp/image.el.Retirarse
imagemagickno se mostrarán como imágenes en línea enorg-mode.Referencias
image-transform-fit-to-widthimage-transform-fit-to-height#18797,#10746,#10112fuente
image-transform-set-scalepuede ser lo que buscas. Sin embargo, requiere que Emacs se compile con el soporte de Imagemagick.También hay un comentario
image-transform-modeen laimage-mode.eletiqueta "Aún no implementado".fuente
Does Emacs use imagemagick? yescuando corro./configure. Así que compiló con imagemagick. La transformación de imagen fija no funciona para mí. (En Emacs 24.4 x86_64-unknown-linux-gnu) también tiene lo siguiente enconfig.log:| #define HAVE_IMAGEMAGICK 1| #define HAVE_MAGICKEXPORTIMAGEPIXELS 1| #define HAVE_MAGICKMERGEIMAGELAYERS 1.Aquí hay una solución que le permite escalar hacia arriba y hacia abajo usando las mismas teclas que se usan para la escala de texto, Cx C- = y Cx C--
fuente