2011-04-02 62 views
11

我已經搜索沒有找到一個確切的解決方案...有誰知道如何覆蓋Mathematica的默認等寬字體,所以所有StandardForm輸入/輸出,包括在幫助瀏覽器,渲染'Consolas'?將StandardForm I/O的默認字體從'New Courier'更改爲'Consolas'?

選擇檢查員沒有什麼幫助(可能是因爲我不知道我在找什麼?)。還有一個'字體替換'列表 - 我覺得因爲看起來像是循環引用而引起的混淆(即包括諸如:Courier - > New Courier和New Courier - > Courier)

這裏是截圖比較兩種字體的125%。

enter image description here

+0

國際海事組織,你的液晶屏幕有一個倒置的子像素排列(BGR)比我的(RGB),這使得截圖非常醜陋...此外,字體是「Courier New」... – kennytm 2011-04-02 18:57:32

+0

不確定關於BGR vs RGB ...(屏幕是索尼Z,FHD)我猜它看起來很糟糕,因爲MS剪輯工具和/或事實它被放大了125%。快遞新?指出。 :) – telefunkenvf14 2011-04-02 19:22:15

回答

16

InputOutput細胞類型得到了StandardForm單元格樣式的字體(在Core.nb,通過Default.nb繼承),所以你需要製作或編輯風格的單元格中所期望的樣式表,例如:

Cell[StyleData["StandardForm"], 
FontFamily->"Consolas", 
FontSize->12, 
FontWeight->"Plain", 
FontSlant->"Plain"] 

例子:

editing a StyleSheet

您不必在Cell表達貼,您可以在下拉菜單中插入所需的類型,或在「輸入樣式名稱」框中輸入名稱,然後設置樣式選擇生成的單元格,並使用格式菜單調整樣式以符合您的想法。

+1

這是更清潔。爲什麼StandardForm不在下拉列表中? – 2011-04-02 22:14:41

+0

@ Mr.Wizard我同意爲什麼heck不是名單中的StandardForm?!?在問之前,我確實已經打開了Core.nb(基於MathGroup上的一篇舊文章),但我沒有在下拉列表中看到StandardForm。進一步令我困惑的是Input以Times顯示格式。感謝你們兩位的幫助! – telefunkenvf14 2011-04-02 23:43:08

+0

'StandardForm'定義位於Core.nb中「用於Mathematica系統的元素的樣式」部分的「FormatType樣式」小節中。可能它沒有在下拉列表中列出的原因是它位於Core.nb的子部分而不是部分。 – 2011-04-03 07:11:06

6

打開您想要更改的筆記本。

轉到格式>編輯樣式表...

粘貼到該窗口的底部,這(改變宋體任何你想):

Cell[ 
    StyleData["Input"], 
    PrivateFontOptions -> {"FontPostScriptName" -> "Verdana"} 
] 

你應該得到一個彈出窗口,詢問是否你想「解讀文本」。點擊是。

保存並重新加載您的筆記本。

如果您想對所有筆記本電腦都這樣做,那麼您應該編輯Default.nb樣式表。

+0

以這種方式使用'FontFamily - >「Verdana」''和'PrivateFontOptions - > {「FontPostScriptName」 - >「Verdana」}有什麼區別? – 2011-04-03 00:51:10

+1

使用Michael Pilat的方法。這基本上是一個駭客來解決我對StandardForm是一個有效的樣式表部分的無知。 – 2011-04-03 01:10:38