如何修改OUTPUT字体类型?

时间:2011-11-03 18:55:15

标签: wolfram-mathematica mathematica-frontend wolframalpha

是否可以更改OUTPUT字体类型而不是默认字体类型?怎么样?

这是我的默认样式表:http://filefactory.com/file/cfc2cb0/n/blueOutput.nb

谢谢!

5 个答案:

答案 0 :(得分:5)

问题在于StandardForm不尊重FontFamily选项,尽管它似乎确实尊重大多数其他字体选项。 Sjoerd's answer使用TraditionalForm输出,因此有效。如果您运行

,则可以看到此问题
SetOptions[EvaluationNotebook[], StyleDefinitions -> Notebook[{
    Cell[StyleData[StyleDefinitions -> "Default.nb"]],
    Cell[StyleData["Output"],
     FontColor -> RGBColor[0, 0, .5], FontSize -> 14, 
     FontFamily -> "Symbol", FontWeight -> "Bold"]}]]

然后比较

{1 + 1, "abc", Sin[x]} (* This is by default in StandardForm *)
{1 + 1, "abc", Sin[x]} // StandardForm
{1 + 1, "abc", Sin[x]} // OutputForm
{1 + 1, "abc", Sin[x]} // TraditionalForm

output from above

您还可以查看

Dynamic[CurrentValue/@{FontFamily, FontWeight, FontSize}]
Dynamic[CurrentValue/@{FontFamily, FontWeight, FontSize}] // TraditionalForm

output from above

表示输出中CurrentValue“看到”的FontFamily取决于输出格式。

不幸的是,我没有看到如何解决这个问题...

答案 1 :(得分:4)

转到Format > Edit Stylesheet...菜单。然后在弹出的私有样式定义表中从下拉菜单中选择“输出”并更改生成的输出单元格的外观。此样式表将与您打开的笔记本一起存储。

enter image description here

enter image description here

答案 2 :(得分:3)

根据Simon的回答,您可以使用$PrePrint强制以某种样式打印输出。

$PrePrint = Style[#, FontFamily -> "Symbol"] &;

{1 + 1, "abc", Sin[x]}

enter image description here

答案 3 :(得分:2)

您可以通过重新定义默认情况下用于StandardForm样式的Output样式来执行此操作(请参阅DefaultFormatType样式中的Output选项):

SetOptions[EvaluationNotebook[], 
 StyleDefinitions -> 
  Notebook[{Cell[StyleData[StyleDefinitions -> "Default.nb"]], 
    Cell[StyleData["StandardForm"], 
     FontFamily -> "Palatino Linotype"]}, 
   StyleDefinitions -> "PrivateStylesheetFormatting.nb"]]

但在这种情况下,Input样式也会受到影响,因为它也基于StandardForm样式...

答案 4 :(得分:-1)

您可以尝试使用Style[]命令包装输入。例如:

test="This is a test string.";
Style[test,{Red,"Title"}]

这会在我的样式表的“标题”设置中生成红色的字符串。更改样式表的解决方案显然比这更好,但这可能是一个快速而肮脏的临时解决方法。