emacs@29 下 org-latex-preview 数学预览显示不正确 (svg 颜色错误)

之前向 emacs-plus 提交过 issue, 作者表示这还是与官方仓库相关. 目前没有找到合适的解决方案.

下面是 issue 的原内容, 我直接把翻译后的版本复制过来好了:

当使用 dvisvgm 来预览数学公式时, 如果在 org-latex-packages-alist 添加了额外的字体包比如 txfonts, 图片会显示错误.

比如:

(setq org-latex-packages-alist
      '(("" "txfonts" t)))

(setq org-preview-latex-default-process 'dvisvgm)

我初步怀疑是 Emacs 在创建 LaTeX preview 的 overlay 时弄错了 :foreground 的颜色, 但是经过下面的测试我初步确认应该不是这个原因导致的:

我首先将 org-latex-preview 生成的 svg 图片在网页上进行了预览

发现显示正常.

随后将该 svg 图片直接放在 org 文件中进行预览, 发现颜色显示错误:

(上方的是 overlay, 下方的是原图片); 这样应该就能排除是创建 overlay 时导致的错误了.

P.S.

(1) 这些预览和图片在 Emacs 的亮色模式下都能够正常显示, 只在暗色模式下出现错误.

(2) 在 emacs-mac 下这些都能正确显示.

(3) 虽然原本的 issue 已经 closed, 但事实上问题并没有解决. 忽略我在 issue 下补充的内容.

现已解决

在 emacs-mirror 4 天前的 commit Fix bug#59075 中修复了上面提及的错误.

相关讨论见 emacs-plus svg scaling problem on macOS Ventura 13.0 (M1).

3 个赞