組織モードのインライン画像表示サイズ


11

幅400の組織モードのインライン画像(emacs)を表示したいのですが、実際には常に元のサイズで表示されます。

以下の私のステップ:

  1. 以下のコマンドでImageMagickをインストールします。 sudo port install imagemagick
  2. 以下のコマンドを使用してemacsをインストールします。 brew install emacs --HEAD --use-git-head --cocoa --with-gnutls --with-rsvg --with-imagemagick 次に確認します。emacsのバージョンはですがGNU Emacs 26.0.50.1(image-type-available-p 'imagemagick)結果はnil

  3. 〜/ .emacs.d / init.elを編集して、以下の行を追加します。 (setq org-image-actual-width nil)

  4. test.orgに以下の組織コードを記述します。

#+ATTR_ORG: :width 400 [[file:test.png]] 5.実行後C-c C-x C-v、画像は400として表示されず、実際のサイズになります。


MacPorts経由でImageMagickをサポートするグラフィックEmacs(Emacs.app)をインストールするには、を使用しますsudo port install emacs-app +imagemagick。MacPortsを使用してHomeBrewの依存関係をインストールしているようですが、動作するかどうかはわかりません。依存関係を手動でインストールする必要はまったくありません。それはパッケージマネージャーの仕事です。さらに、一度に2つのパッケージマネージャーを使用することは、通常、悪い考えであり、不要です。
xuchunyang 2017

@xuchunyang正確に、ポートを使用してemacs-appを再インストールした後、正常に動作します。ありがとう
beetlej

回答:


6

Imagemagickのバージョンが一致しません。

brew installコマンドを次のように変更します。

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

次にbrew info emacs、magicmagickが正常かどうかを確認するために実行します。

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 ✔

imagemagick @ 6がチェックされている場合は、すべて問題ありません。

emacsで以下のコマンドを実行して、imagemagickパッケージが利用可能かどうかを確認します。

*** Welcome to IELM ***  Type (describe-mode) for help.
ELISP> (image-type-available-p 'imagemagick)
t
ELISP>

7
(setq org-image-actual-width 400)

仕事をする必要があります。変数(C-h v org-image-actual-width RET)のドキュメントに詳細が記載されています。

org-image-actual-widthは「org.el」で定義された変数です。その値はt

ドキュメンテーション:インライン化するとき、画像の実際の幅を使用する必要がありますか?

tに設定すると、常に画像の幅を使用します。

数値に設定する場合は、imagemagick(使用可能な場合)を使用して、画像の幅をこの値に設定します。

リスト内の数値に設定する場合、幅の指定に一致する場合は、#+ ATTR。*キーワードから幅を取得してください。

#+ATTR_HTML: :width 300px

何も見つからない場合は、その数を使用します。

nilに設定されている場合は、#+ ATTR。*キーワードから幅を取得し、何も見つからない場合は元の幅に戻してください。

これには、Emacs> = 24.1、imagemagickサポート付きのbuild(sic)が必要です。


これは答えのようには聞こえませんが、コメントである可能性があります。
JeanPierre 2017

これは質問に対する答えを提供しません。批評したり、著者に説明を求めるには、投稿の下にコメントを残してください。- レビューより
JeanPierre 2017

それは良いですか?
NickD 2017

5

ステップ2では、

(image-type-available-p 'imagemagick)

戻る必要がありtます。nil利用不可です。おそらく、あなたが得る理由nilは、imagemagickのmacportsインストールからのパスがemacsのbrewインストールによって取得されていないためです。そのためのコンパイルエラーに気づきましたか?

いずれの場合も、手動でimagemagickへのパスを調整するか、brewからもインストールします。macportsからimagemagickとemacsの両方をインストールするとうまくいきます。


正確には、emacsをアンインストールし、ポートを使用して再インストールした後、正常に動作します。
beetlej 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.