2013-04-25 27 views
9

我在我的標籤和圖例中呈現希臘字符時出現問題,所以我想也許切換字體會有所幫助。因此,我發現了一個更大的問題 - Matlab似乎完全不尊重我的字體設置。在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-listlistfonts在Matlab命令提示符下進行了雙重檢查,發現Ubuntu字體已安裝且可用。我正在運行Matlab R2012b。

如何在我的數字中設置字體?

UPDATE:
作爲意見建議,我想看看這是可能是一個issue with Java on Ubuntu。果然,從OpenJDK切換到Oracle Java有所幫助,但還不夠 - 我可以使用Helvetica和其他一些軟件,但是我無法在安裝的字體中自由選擇。例如,Ubuntu字體不起作用。 (但是,在Matlab的主GUI中 - 我已經在菜單等中將字體更改爲Ubuntu,並且在編輯器和命令窗口中將Consolas更改爲,並呈現OK。)

每當我選擇一個圖形字體不起作用,Matlab使用以下屏幕截圖中顯示的內容作爲後備。

enter image description here

pqf這裏確實應該是希臘字母PI,θ和島(他們正在與\pi等規定),但我猜的字體沒有按」沒有這些角色。第三個圖的y標籤中的奇怪東西是瑞典語ö - 它不應該是編碼問題,因爲該文件保存爲UTF-8,這也是返回的內容,所以我假設這是也是一個字體問題。

+0

可能與[缺少在Ubuntu字體爲MATLAB(http://stackoverflow.com/a/16191865/2180721)。請發佈你的操作系統的細節。 – Oleg 2013-04-25 15:47:20

+0

另外,請嘗試'uisetfont()'而不是'listfonts'。 – Oleg 2013-04-25 16:04:50

+0

@OlegKomarov:感謝您的鏈接和提示 - 但安裝軟件包無濟於事。 Ubuntu被列在uisetfont()調出的對話框中,選擇它並不會改變任何東西。我正在運行Ubuntu 12.04。 – 2013-04-25 16:19:52

回答

1

嘗試使用'Interpreter','LaTex'選項(默認爲'Interpreter','Tex')。這可能會讓你到一個較少錯誤的字體渲染器。

+0

不幸的是,這並沒有改變一件事。 – 2013-05-02 12:56:33

4

安裝xfonts-75dpi和xfonts-100dpi對我來說是默認設置。

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

然後註銷並重新登錄。

這似乎允許符號(例如\ pi)和字體大小(例如set(h,'FontSize',14))改變(使用默認的Matlab字體)。

機器設置:Ubuntu的12.04的x64用Matlab R2012b