2.8.11 格式中的细节调节Mathematica 中提供了大量的可选项以调节表达式格式设置中的细节. 在大部分情况下,这些选项的默认值是相当合理的. 但有时所处理的表达式 的特点需要改变这些可选项. 单元网 (GridBox )的可选项 建立数字阵列 在 GridBox 的所有选项取默认值下,这个阵列如何显示的方式 Out[2]//DisplayForm=
 |
各列中的元素右对齐 Out[3]//DisplayForm=
 |
前两列左对齐,后一列右对齐 Out[4]//DisplayForm=
 |
在各列中留空格 Out[5]//DisplayForm=
 |
令各列有相同的宽度 Out[6]//DisplayForm=
 |
一般情况下,GridBox 按每行中当前出现的字形为字符留出空格. 但用 RowMinHeight->0 可将行安排得紧一些 Out[7]//DisplayForm=
 |
ColumnAlignments可选项 在建立复杂表格时,表中各元素对齐方式的仔细控制是重要的.设置 ColumnAlignments->"c" 告诉 Mathematica 在排列每列的元素时将元素中出 现的第一个 c 对齐.选择 ColumnAlignments->"." 时,数字将按照其小数 点对齐. Mathematica 还提供了一个特殊字符 \[AlignmentMarker] ,它可以被输入为 am . 这个字符不明确显示,但可以插入表中的元素内以表示 这些元素在什么位置对齐. Alignments可选项 这是 GridBox 中一行元素的默认对齐 Out[8]//DisplayForm=
 |
这是每个元素下部对齐的结果 Out[9]//DisplayForm=
 |
在通常的文本中相继的字符均字按基准线对齐. m 和 x 等大部分字母,基准线 与底部重合. 一般来讲,基准线就是主要部分的底部,例如在大部分字型中, g 和 y下降到基准线之下. 用默认设置 RowAlignments->Baseline 对齐字符 Out[10]//DisplayForm=
 |
按底部对齐时的排列 Out[11]//DisplayForm=
 |
在通常的文本中,单元序列和字符一样按基准线对齐.对不同类型的单元, 基准线简单地取作单元主要元素的基准线. 例如,上标单元 的基准线. 对一个 FractionBox , 分数线定义了单元的轴线, 在文本的一个字符中,仍然可以定义一轴线,对+和(等对称字符, 它是通过字符中心的线. 分数单元的基准线与轴线的距离和文本中当前 字符的基准线到字符轴线的距离相同. 对 GridBox,可以用 GridBaseline 选项去指定基准线的位置, 可能的设置与 RowAlignments 相同. 默认的是轴线,它使得 GridBox 的中心与它所在文本的轴线对齐. GridBaseline 选项指定 GridBox 的基准线 Out[12]//DisplayForm=
 |
ButtonBox 的格式选项 这里产生了一个外表与对话框中的元素类似的按纽 Out[13]//DisplayForm=
 |
用行和列均无间隔的 ButtonBox 对象设置调色板 Out[14]//DisplayForm=
 |
在一个 GridBox 中按纽展开成相互对齐的格式 Out[15]//DisplayForm=
 |
这里下面的按纽没有展开 Out[16]//DisplayForm=
 |
2.10.6 节将讨论怎样设置 ButtonBox 对象的行为. 距离的单位 各种宽度的空格字符 输入 x+y 后,Mathematica 立即将它转化为 RowBox[{"x","+","y"}]. 当 RowBox 输出时,Mathematica 就在它的各个元素间加适当的空格. 一般地在 + 等运算符前后加较大的空格,在 x 等非运算符前后加较小的空格. 明确插入空格字符可修改这些空格的大小. 正空格字符可以加大距离, 负空格字符可以缩小距离. Mathematica 一般在 +, - 等运算符前后加较大的空格 Out[17]//DisplayForm=
 |
可以明确插入正负空格字符以改变间隔 Out[18]//DisplayForm=
 |
Mathematica中禁止自动定位 在相继的两个字符间加相同的空格 Out[19]//DisplayForm=
 |
将一个表达式显示在屏幕上时,在笔记本前端中可以交互地对元素 的位置进行细致的调节.一般地    ,    ,    ,    ]将所选择的 元素按当前屏幕的刻度调节一个象素. 这种调节在 Mathematica 中用 AdjustmentBox. 调节一个单元的位置 在 B 前加空格,B 之后减空格 Out[20]//DisplayForm=
 |
通过仔细地调节,可以上两个字符重合 Out[21]//DisplayForm=
 |
在 AdjustmentBox 中的左右边幅的单位用 em,上下边幅的单位用 x-heights. 通过正值边幅可以加大此处单元的距离,用负值可以消去一些空格 使单元靠紧.在 RowBox 中,竖直方向的对齐按基准线进行,而在 FractionBox 或 OverscriptBox 中对齐则按上下边幅进行. 给单元留出空位,但不显示它们 在排列输出的不同元素时,可以在 StyleBox 中用 ShowContents->False 给单元留下空位,但不显示它们. 给 Y 留出空格,但不显示它 Out[22]//DisplayForm=
 |
大部分字符的尺寸是由它们所用的字形确定的,这些字形是由 StyleBox 中的 FontSize 确定的. 但也有一些特殊的可扩字符,它们的大小即使在 某一个字形内也会改变. 例如括号,默认设置它能扩张以便 包含它所含的表达式. 默认括号可以扩张以覆盖它所含的表达式 Out[23]//DisplayForm=
 |
控制可扩张字符的 StyleBox 可选项 在简单的 RowBox 中的括号按默认情况扩张以覆盖出现在 RowBox 内元素 Out[24]//DisplayForm=
 |
一些可扩张的字符按默认状态只能扩张到一定的尺寸 Out[25]//DisplayForm=
 |
这里指定在 StyleBox 中的字符可任意扩张到所需要的大小 Out[26]//DisplayForm=
 |
在默认情况下,可扩张字符对称性地增长 Out[27]//DisplayForm=
 |
设置 SpanSymmetric->False 可允许可扩张字 符非对称地增长 Out[28]//DisplayForm=
 |
笔记本前端提供了空位字符菜单,它允许改变当前所选字符扩张的特征. 可扩张字符的默认特征 顶部的括号按默认设置扩张到覆盖 OverscriptBox Out[29]//DisplayForm=
 |
右箭头水平扩张以覆盖它所在的列 Out[30]//DisplayForm=
 |
上箭头同时扩张以覆盖它所在的行 Out[31]//DisplayForm=
 |
控制下标位置和大小的StyleBox选项 设置 SuperscriptBox 对象 的嵌套
Out[32]= |  |
默认设置中相继的上标逐渐变小 Out[33]//DisplayForm=
 |
令所有层次的上标同样大小 Out[34]//DisplayForm=
 |
相继的上标逐渐变小,但仅小到 5 点尺寸 Out[35]//DisplayForm=
 |
Mathematica 按照上, 下标出现的环境优化它们的位置. 当需要排列几种不同 的上下标时,就要使用 ScriptBaselineShifts 选项去明确指定每个移位的距离. 第 2 个下标比第一个下标稍微向下移了一点 Out[36]//DisplayForm=
 |
令 Mathematica 对两个下标进行相同的移位 Out[37]//DisplayForm=
 |
UnderoverscriptBox及相应单元的可选项 求和的上下限通常是作为顶底标处理的
Out[38]= |  |
当和式以较小的形式出现时,上下限就作为上下标处理
Out[39]= |  |
这里 low 和 high 直接在 XX 之上和之下显示 Out[40]//DisplayForm=
 |
这里将它们移到上, 下标的位置 Out[41]//DisplayForm=
 |
LimitsPositioning->Automatic 与单元中第一个变量是 \[Sum]] 或 \[Product] 时 LimitsPositioning->True 一样.可以通过设置LimitsPositioningTokens 选项来指定 这些字符的集合. 单元中的分行选项 当处理长表达式时,不可避免地要出现多行. 许多单元在分行 显示时改变它们的显示特性. 在一行显示分式
Out[42]= |  |
这个分式显示在几行之中
Out[43]= |  |
用 MultilineFunction 去指定一个单元是否要多行显示. 设置 MultilineFunction->None 禁止一个单元分行. 可以用 \[NoBreak] 和 \[NonBreakingSpace] 字符去控制表达式 的分行,Mathematica 会尽量避免在这些地方分行. 可以明确插入 \[NewLine] 字符令 Mathematica 分行,在笔记本前端中,只要简单地 用一个回车即可.默认的设置是回车后的下一行自动缩进. 但缩进的多少 在这一行开始后不再改变. 插入 \[IndentingNewLine] 字符可以让 Mathematica 在一行所出现环境的基础上保持适当缩进水平. 控制分行的字符 这里是第一层次上的换行
Out[44]= |  |
这里的换行发生在很深的层次
Out[45]= |  |
|