tamanho da exibição da imagem embutida no modo org

11

Desejo exibir uma imagem embutida no modo org (no emacs) com largura 400, mas na verdade sempre a mostra como tamanho original.

Meus passos como abaixo:

  1. Instale o ImageMagick com o comando abaixo: sudo port install imagemagick
  2. Instale o emacs com o comando abaixo: brew install emacs --HEAD --use-git-head --cocoa --with-gnutls --with-rsvg --with-imagemagick Então eu verifico, a versão do emacs é GNU Emacs 26.0.50.1, mas o (image-type-available-p 'imagemagick)resultado énil

  3. Edite ~ / .emacs.d / init.el para adicionar a linha abaixo: (setq org-image-actual-width nil)

  4. Escreva abaixo o código organizacional no test.org:

#+ATTR_ORG: :width 400 [[file:test.png]] 5. Após a execução C-c C-x C-v, a imagem não é exibida como 400, mas com o tamanho real.

beetlej
fonte
Para instalar o Emacs gráfico (Emacs.app) com o suporte do ImageMagick via MacPorts, use sudo port install emacs-app +imagemagick. Parece que você está usando o MacPorts para instalar a dependência do HomeBrew, não tenho idéia se deve funcionar. e não há necessidade de instalar a dependência manualmente, é o trabalho do seu gerenciador de pacotes. Além disso, o uso de dois gerenciadores de pacotes por vez é geralmente uma má idéia e desnecessário.
xuchunyang
@xuchunyang Exatamente, depois de reinstalar o emacs-app com o port, ele funciona bem agora. Graças
beetlej

Respostas:

6

A versão Imagemagick não corresponde.

Altere o comando brew install como abaixo:

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

Em seguida, corra brew info emacspara verificar se magicmagick está bem!

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 ✔

Se imagemagick @ 6 estiver marcado, tudo ficará bem.

No emacs, execute o comando abaixo para verificar se o pacote imagemagick está disponível:

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

deve fazer o trabalho. A documentação da variável ( C-h v org-image-actual-width RET) fornece mais detalhes:

org-image-current-width é uma variável definida em 'org.el'. Seu valor é t

Documentação: Devemos usar a largura real das imagens ao incorporá-las?

Quando definido como t, sempre use a largura da imagem.

Quando definido como um número, use imagemagick (quando disponível) para definir a largura da imagem para esse valor.

Quando definido como um número em uma lista, tente obter a largura de qualquer palavra-chave # + ATTR. * Se corresponder a uma especificação de largura como

#+ATTR_HTML: :width 300px

e volte a esse número se nenhum for encontrado.

Quando definido como nulo, tente obter a largura de uma palavra-chave # + ATTR. * E volte à largura original se nenhuma for encontrada.

Isso requer Emacs> = 24.1, build (sic) com suporte a imagemagick.

NickD
fonte
Isso não parece uma resposta, mas pode ser um comentário.
31417 JeanPierre
Isso não fornece uma resposta para a pergunta. Para criticar ou solicitar esclarecimentos a um autor, deixe um comentário abaixo da postagem. - Do comentário
JeanPierre 8/17/17
Isto é melhor?
NickD 8/02
5

Na sua etapa 2,

(image-type-available-p 'imagemagick)

deve retornar t. nilestá indisponível. Talvez a razão para você ter nilencontrado os caminhos da instalação do imagemagick no macports não esteja sendo escolhida pela instalação de distribuição do emacs. Você notou algum erro de compilação nesse sentido?

De qualquer forma, ajuste o caminho para o imagemagick manualmente ou instale-o também do brew. Instalar o imagemagick e o emacs do macports funciona para mim.

Usuário Emacs
fonte
Exatamente, após desinstalar o emacs e reinstalá-lo com o port, ele funciona bem agora.
beetlej