tamaño de visualización de imagen en línea del modo org

11

Deseo mostrar la imagen en línea del modo org (en emacs) con un ancho de 400 pero en realidad siempre se muestra como tamaño original.

Mis pasos como a continuación:

  1. Instale ImageMagick con el siguiente comando: sudo port install imagemagick
  2. Instale emacs con el siguiente comando: brew install emacs --HEAD --use-git-head --cocoa --with-gnutls --with-rsvg --with-imagemagick Luego lo verifico, la versión de emacs es GNU Emacs 26.0.50.1, pero el (image-type-available-p 'imagemagick)resultado esnil

  3. Edite ~ / .emacs.d / init.el para agregar la siguiente línea: (setq org-image-actual-width nil)

  4. Escriba a continuación el código de organización en test.org:

#+ATTR_ORG: :width 400 [[file:test.png]] 5. Después de la ejecución C-c C-x C-v, la imagen no se muestra como 400 pero el tamaño real.

escarabajo
fuente
Para instalar gráficos Emacs (Emacs.app) con soporte de ImageMagick a través de MacPorts, use sudo port install emacs-app +imagemagick. Parece que está utilizando MacPorts para instalar la dependencia de HomeBrew, no tengo idea si debería funcionar. y no hay necesidad de instalar la dependencia manualmente, es el trabajo de su administrador de paquetes. Además, usar dos gestores de paquetes a la vez suele ser una mala idea e innecesario.
xuchunyang
@xuchunyang Exactamente, después de reinstalar la aplicación emacs con el puerto, ahora funciona bien. Gracias
beetlej

Respuestas:

6

La versión de Imagemagick no coincide.

Cambie el comando brew install de la siguiente manera:

brew install emacs --with-cocoa --with-gnutls --with-dbus --with-librsvg --with-imagemagick@6 --with-mailutils --devel

¡Entonces corre brew info emacspara comprobar si magicmagick está bien!

emacs: stable 25.1 (bottled), devel 25.2-rc2, HEAD
GNU Emacs text editor
https://www.gnu.org/software/emacs/
/usr/local/Cellar/emacs/25.2-rc2 (4,051 files, 120.1MB) *
  Built from source on 2017-03-11 at 16:56:47 with: --with-cocoa --with-gnutls --with-dbus --with-librsvg --with-imagemagick@6 --with-mailutils
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/emacs.rb
==> Dependencies
Build: pkg-config ✔
Optional: dbus ✔, gnutls ✔, librsvg ✔, imagemagick@6 ✔, mailutils ✔

Si se marca imagemagick @ 6, entonces todo debería estar bien.

En emacs, ejecute el siguiente comando para verificar si el paquete imagemagick está disponible:

*** Welcome to IELM ***  Type (describe-mode) for help.
ELISP> (image-type-available-p 'imagemagick)
t
ELISP>
lucky1928
fuente
7
(setq org-image-actual-width 400)

Debería hacer el trabajo. La documentación de la variable ( C-h v org-image-actual-width RET) da más detalles:

org-image-actual-width es una variable definida en 'org.el'. Su valor es t

Documentación: ¿Deberíamos usar el ancho real de las imágenes cuando las alineamos?

Cuando se establece en t, use siempre el ancho de la imagen.

Cuando se establece en un número, use imagemagick (cuando esté disponible) para establecer el ancho de la imagen en este valor.

Cuando se establece en un número en una lista, intente obtener el ancho de cualquier palabra clave # + ATTR. * Si coincide con una especificación de ancho como

#+ATTR_HTML: :width 300px

y recurrir a ese número si no se encuentra ninguno.

Cuando se establece en nil, intente obtener el ancho de una palabra clave # + ATTR. * Y retroceda al ancho original si no se encuentra ninguno.

Esto requiere Emacs> = 24.1, build (sic) con soporte de imagemagick.

NickD
fuente
Esto no suena como una respuesta, pero podría ser un comentario.
JeanPierre
Esto no proporciona una respuesta a la pregunta. Para criticar o solicitar una aclaración de un autor, deje un comentario debajo de su publicación. - De la opinión
JeanPierre
¿Eso está mejor?
NickD
5

En tu paso 2,

(image-type-available-p 'imagemagick)

Debería volver t. niles para no disponible. Quizás la razón que obtienes niles que las rutas de la instalación de macports de imagemagick no están siendo tomadas por la instalación de emacs. ¿Has notado algún error de compilación en ese sentido?

En cualquier caso, ajuste la ruta a imagemagick manualmente o instálelo también desde brew. Instalar imagemagick y emacs desde macports me funciona.

Usuario de Emacs
fuente
Exactamente, después de desinstalar emacs y reinstalarlo con el puerto, ahora funciona bien.
beetlej