首页 文章

在Matlab中更改图形字体无效

提问于
浏览
9

我在标签和图例中渲染希腊字符时遇到问题,所以我想也许切换字体会有所帮助 . 因此,我发现了一个更大的问题--Matlab似乎根本不尊重我的字体设置 .

我当然试过了

set(gcf, 'FontName', 'Ubuntu')
set(gca, 'FontName', 'Ubuntu')

还有像

set(findall(gca, 'type', 'text'), 'FontName', 'Ubuntu')

set(0,'DefaultAxesFontName', 'Ubuntu')

我也试过切换渲染器

set(0, 'DefaultFigureRenderer', 'OpenGL') % also tried 'zbuffer' and 'painters'

我甚至进入了图中的属性编辑器,并手动更改了字体 . 无论我做什么,字体都会出现相同的,丑陋的等宽字体(见下图) . 使用图中菜单栏中的另存为...命令保存此图片,但例如 print -dpng 'fonttest.png' 也不起作用 .

我已经在我的终端中使用 fc-list 和在Matlab命令提示符下的 listfonts 双重检查了 Ubuntu 字体已安装且可用 . 我正在运行Matlab R2012b .

如何在我的数字中设置字体?

UPDATE:
正如评论中所建议的,我试图看看这是否可能是issue with Java on Ubuntu . 果然,从OpenJDK切换到Oracle Java有帮助,但还不够 - 我可以使用Helvetica和其他几个,但我可以在菜单等中将字体更改为Ubuntu,在编辑器和命令窗口中将Consolas更改为,并且它呈现好 . )

每当我选择不起作用的数字字体时,Matlab会使用下面屏幕截图中显示的内容作为后备 .

enter image description here

这里的 pqf 应该是希腊字母pi,theta和phi(它们用 \pi 等指定)但是我猜字体不是编码问题,因为文件保存为UTF-8 ,这也是 slCharacterEncoding 返回的,所以我认为这也是一个字体问题 .

2 回答

  • 5

    安装xfonts-75dpi和xfonts-100dpi对我来说是默认设置的诀窍 .

    sudo apt-get install xfonts-75dpi xfonts-100dpi
    

    然后注销并再次登录 .

    这似乎允许两个符号(例如\ pi)和字体大小(例如set(h,'FontSize',14))发生变化(使用默认的Matlab字体) .

    机器设置:Ubuntu 12.04 x64与Matlab R2012b

  • 1

    尝试使用'Interpreter'选项,'LaTex'(默认为'Interpreter','Tex') . 这可能会让你找到一个不那么错误的字体渲染器 .

相关问题