[已解决][关于org中inline图片的显示问题]org-mode中的inline image无法resize

一、查询了emacs china中的论坛帖子 其实主要因为这个帖子

里面用到了

#+ATTR_latex: :width 200 #+ATTR_HTML: :width 350 #+ATTR_ORG: :width 350

但是在spacemacs下org-toggle-inline-images并没有起作用 表现如下图

二、以及查阅了下面这个帖子

我主要做了三个事情,对于inline图片的尺寸依旧没有影响

1.C-h v 将变量org-image-actual width 编辑为’(400)

主要参考Re: [O] scale inline images in orgmode

2.C-h f查看了里面org-display-inline-images函数

以及查看相关提醒了解到需要将(image-type-available-p ‘imagemagick)

3.C-h f 搜索了image-type-available-p, 查看的值是:

代码是

也就是说image-type-available-p变量是type 不知道是应该简单修改成(defun image-type-available-p 'imagemagick)吗?

三、小结: 我只是想在org-mode中org-toggle-inline-images时修改inline图片尺寸

但不知道#+ATTR_ORG: :width 350为何不起作用。。是缺失了什么步骤吗

相关帖子:Emacs Org-mode ignores #+ATTR_LATEX - TeX - LaTeX Stack Exchange

但也并没有找到具体解决方式。。

缩放图片需要依赖 imagemagick,安装emacs的时候加上 --with-imagemagick

brew install emacs --with-cocoa --with-gnutls --with-rsvg --with-imagemagick
1 个赞

请问是需要重新安装emacs还是安装相关包?

重新安装 emacs

谢谢 但是在重新安装 emacs&spacemacs后 对图片用-/+进行放大缩小 下方显示cannot rescale images without ImageMagick support… 而且#+ATTR_* 依旧失效

再次安装。。 发现即使安装了cocoa和imageMagick提示warning 参数会被ignore

问题已解决 记录一下 留给后来者一点解决思路
主要问题还是imagemagick上面
参考了archlinux 编译 emacs 25.3 和 27 均无法支持imagemagick - #8,来自 twlz0ne
虽然这个帖子里面没有介绍具体的解决方法。。
imagemagick7没有具体试过
首先安装imagemagick@6 也就是6代版本的imagemagick
在brew info emacs可以显示带什么进行编译emacs(内含with-imagemagick@6)
brew install --with-imagemagick@6 emacs
如果已经安装了会显示Warning: emacs 26.1_1 is already installed and up-to-date
但是mac系统下emacs打开jpg对图片进行-/+来缩放时依旧显示没有imagemagick support
需要brew install emacs-plus 似乎emacs-plus中与imagemagick相关 再对brew link emacs-plus(不清楚为什么大部分的网站都是brew linkapps emacs-plus我这里不起作用)
如果显示

Error: Could not symlink bin/ebrowse
Target /usr/local/bin/ebrowse
is a symlink belonging to emacs. You can unlink it:
brew unlink emacs

To force the link and overwrite all conflicting files:
brew link --overwrite emacs-plus

To list all files that would be deleted:
brew link --overwrite --dry-run emacs-plus
选择brew link --overwrite --dry-run emacs-plus 会替换一些文件 我猜测是之前在安装emacs-plus或者卸载mac旧版本的emacs时未删除干净 在link以后,再次打开emacs 打开jpg文件 -/+就能进行缩放了

主题上面的
#+ATTR_ORG: :width 350 和修改内部函数
C-h v 将变量org-image-actual width 编辑为’(400)
都会生效了。具体意义可以看主题贴出来的帖子。。