如何避免org-latex-preview生成的图的尺寸受到不同显示器尺寸的影响

我在安装了fedora linux41的16英寸,分辨率为2560x1440的笔记本电脑下使用emacs 29,4。同时我有一块1920x1080的27英寸显示器。我发现在我外接这台显示器时,org-latex-preview生成的预览图尺寸与不外接时不同。
在使用emacs -Q并在org-mode中渲染 \(f\) 时:
不外接显示器使用dvipng:

Width : 9 pixels

Height : 14 pixels

外接显示器使用dvipng:

Width : 14 pixels

Height : 23 pixels

不外接显示器使用dvisvgm:

<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='12.621071pt' height='20.806476pt' viewBox='-33.360516 23.685811 12.621071 20.806476'>

外接显示器使用dvisvgm:

<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='7.612709pt' height='12.549938pt' viewBox='-20.122216 14.28668 7.612709 12.549938'>

请问如果我希望在使用不同显示器时获得一致的体验,我应该怎么做?

display-pixel-heightdisplay-pixel-width获得当前显示器分辨率,display-mm-heightdisplay-mm-width获得显示器尺寸,有了这些可以算出显示器DPI,然后写一个函数根据DPI改变 org-format-latex-options里面的scale甚至emacs全局字体大小。很久之前我是这么干的,后来干脆把这些琐碎的配置从init.el里面剔除,放到单独的custom.el里面,每台电脑单独设置。

1 个赞