[更新]公式自动编号且自动格式化的办法

感谢网友mewing ana的建议, 确实可以很好的实现交叉引用. 特此更新了下本版本!

Word排版中数学公式的排版是个问题, 但是2010毕竟有些改进. 我们就来看看公式居中以及自动编号在2010中的实现.

公式的插入与自动编号

首先插入一个新公式. 例如: 插入->公式->二次公式, 这样就得到一个居中的数学公式:
\[
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
\]
然后切换到”插入”面板, 单击”文档部件”->”域”->”域名选择”AutoNum”, 域属性选择”(1),(2),(3)…” 并确定. 这样就在该公式后插入一个域(1). 如下所示
\[
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}(1)
\]
然后点击上下滚动条上面的那个标尺显示按钮调出”标尺”, 在标尺线刻度为20的下边缘处双击以插入一个制表符(粗体的小刻度), 在弹出的制表符对话框中修改制表位位置为20 字符(因为默认的页面宽度为40, 故20恰是中间位置), 并选取对齐方式为居中并确定. 类似地, 在标尺刻度40左右的下边缘处双击以插入一个制表符, 并设置位置为39 字符, 对齐方式选为右对齐, 并确定.

将光标定位到公式的开头处, 按一下Tab键, 这时发现公式即编号都居中了. 再将光标定位到公式以及编号的前括符之间, 并按下Tab键, 这时编号就右对齐了. 效果如下:
\begin{equation}\label{eq:1}
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\tag{1}
\end{equation}
至此你已经实现了公式的自动编号以及居中.

公式的自动样式化

那么是不是每次都要这样设置一遍呢? 如果你没有手动设置制表符的位置, 那么每次你设置的位置可能很不一样. 于是最好的办法是将这个公式以及编号构成的段落设置成一种样式. 而其他的公式只需利用该样式样式化即可.

新样式的定制

选择刚才设置好的公式和编号所在段落(在该段落左边非文本区域点击左键), 切换到开始面板->点击样式子面板的下箭头, 在调出的样式面板中选择左下角的新建样式, 在弹出的根据格式设置创建新样式中修改名称为你方便记忆的名称, 例如我用:居中编号公式, 并修改后续段落样式为正文, 可以勾选自动更新选框. 并确定.

至此, 刚才自动编号的居中公式的样式已经保存好了.

对新公式套用上述样式

首先, 插入一个新公式, 例如傅里叶级数公式:
\[
f(x)=a_0+\sum_{n=1}^\infty\left(a_n\cos\frac{n\pi x}{L}+b_n\sin\frac{n\pi x}{L}\right)
\]
并依照上面的方法插入编号.

然后选中该公式及编号所在段落, 单击右方样式面板中刚才新定义的样式”居中编号公式”, 这样就将新样式应用到这个公式及编号了. 最后你需要在公式最前方以及公式和编号之间分别按一下Tab键. 这样公式的格式就设置好了.

公式的交叉引用

在上面, 我们实现了公式的自动编号, 下面我们将演示如何引用上面的公式编号. 即所谓的交叉引用, 公式的引用编号会随着原公式编号变化而变化(更新域即可).

为要引用的公式添加书签

在引用公式之前, 我们需要手动为其添加书签, 然后才能通过引用书签而实现交叉引用.

选中你即将要引用的公式编号, 例如(1), 然后切换到”插入”面板-> “书签”, 书签名填入你方便区分的名字, 例如eq1, 最后点击”添加”, 这就完成了对(1)插入了书签.

书签的引用

紧接着, 我们就可以在正文中引用刚才的书签了.

在你要引用的地方, 仍然切换到”插入”面板, 只是这时选择”交叉引用”, 在弹出的对话框中选择引用类型为”书签”, 引用内容为”书签文字”, 并勾选”插入为超链接”, 最后选择要引用的书签, 例如我们就引用刚才创建的eq1, 最后点击”插入”, 这样我们就在正文中对(1)实现了交叉引用.

域的自动更新

作为实验, 我将演示如何实现自动更新编号. 这是特别有用的, 例如在写作时想插入一个编号的公式, 使用交叉引用以及AutoNum你几乎不用修改什么就可以实现编号完全正确.

把刚才的公式连带其编号copy一份, 将其粘贴到原来的公式之前, 你发现什么? 原来的公式编号自动变为了(2), 这是由于原来公式的域是AutoNum的缘故. 但是这时, 你引用的公式编号仍然是显示的(1), 这需要你手动更新下域即可: 右键你要更新的编号->更新域. 当然, 你也可以选中要更新的域(或者干脆Ctrl+A)然后F9刷新即可.

此外, 你还可以设置打印前自动更新所有域: 单击文件->选项->显示-> 打印选项:勾选”打印前更新域”并确定.

发表评论