我经常在两个平台切换,发现用 python 的 matplotlib 画图时,同样的代码生产的图片中字体不同大小也不同导致排版失真。用
import matplotlib
matplotlib.rcParams
查看关于 font 的配置在两个平台下是一致的,区别大概是有些字体在某个平台下没装吧。
请问有什么办法可以快速方便的统一两平台下的字体设置?比如有没有办法查询 macOS 下默认用了哪些字体?是不是安装上那些字体后 Linux 下就会默认用同样的字体了?谢谢!
1
thedrwu 2018-09-11 06:44:55 +08:00 via Android 1
1、不同系统用统一的字体(自己在每个系统上安装好)。免费的字体既全面(数学、希腊、Cyrillic )且好看的不多,为了排好看的字体,几百美元免不了。
2、手动配置 rcparams,包括数学字体( mathtext ),设置好字号。 3、 手动设置好 figure 的尺寸和 dpi。 ( 4、我一般做成 svg,从 inkscape 里重新修改边界,做最后的调整,导出成别的格式。) 图片完全可移植。插到文档里 kerning、ligature、大小、 行间距之类的都与文档很和谐。 |
2
ipwx 2018-09-11 09:39:24 +08:00 1
|
3
ipwx 2018-09-11 09:40:24 +08:00
@thedrwu 装了 LaTeX 可以用 pdfcrop 裁 pdf 白边。当然 png 可以用 imagemagick 裁白边。
|
4
lyricorpse OP |
5
ipwx 2018-09-11 11:25:14 +08:00 via iPhone
@lyricorpse 要注意像 sans, serif, monospace 这种字体是操作系统 dependent 的。
|
6
icymorn 2018-09-11 22:51:12 +08:00 1
|
7
lyricorpse OP |