答案 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
您还可以查看
Dynamic[CurrentValue/@{FontFamily, FontWeight, FontSize}]
Dynamic[CurrentValue/@{FontFamily, FontWeight, FontSize}] // TraditionalForm
表示输出中CurrentValue
“看到”的FontFamily
取决于输出格式。
不幸的是,我没有看到如何解决这个问题...
答案 1 :(得分:4)
转到Format > Edit Stylesheet...
菜单。然后在弹出的私有样式定义表中从下拉菜单中选择“输出”并更改生成的输出单元格的外观。此样式表将与您打开的笔记本一起存储。
答案 2 :(得分:3)
根据Simon的回答,您可以使用$PrePrint
强制以某种样式打印输出。
$PrePrint = Style[#, FontFamily -> "Symbol"] &;
{1 + 1, "abc", Sin[x]}
答案 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"}]
这会在我的样式表的“标题”设置中生成红色的字符串。更改样式表的解决方案显然比这更好,但这可能是一个快速而肮脏的临时解决方法。