好吧,在我深入研究覆盖整个标题的编号之前,我想在这里问一下。
我曾经multilevel numbering
定义过章节号和子章节号。然而,令我惊讶的是,当我添加标题时,章节号将始终是罗马数字,如下例所示,尽管我设置了编号格式
。
Chapter I
1. Part A
<SomeImage>
Figure I.1 <SomeDescription>
2. Part B
Chapter II
1. Part A
2. Part B
我期望的是这样的:
Chapter I
1. Part A
<SomeImage>
Figure 1.1 <SomeDescription>
2. Part B
Chapter II
1. Part A
2. Part B
这是预期的行为吗?如果是,实现预期结果的最佳行动方案是什么?
反正我使用的是 Microsoft Office 2013 Pro Plus。也许我漏掉了什么,或者我应该使用 LaTex。
答案1
我认为你没有忽略任何显而易见的东西。无论你选择 LaTex 还是其他什么,只有你自己才能做出决定。
我可能忽略了一些东西,但试图让 Word 在该领域表现更好的问题实际上在于 Word 对于这些内容如何工作有一个非常具体的模型,以及一个不能给你太大灵活性的实现。
例如,曾经只能基于“标题 n”段落样式定义多级编号方案(当时称为“大纲编号”)。虽然这种限制不再存在,但编号方案中与标题编号有关的部分仍然假设您的章节以“标题 n”样式开头。
默认情况下,当您指定需要章节编号时,Word 会插入一个 { STYLEREF } 字段,以从您指定的标题级别插入序列号。
如果该序列号恰好是数字,比如说“4”,而您实际上想要的是罗马数字“IV”,那么您至少可以添加一个格式开关(例如 *Roman)以将 4 显示为 IV。但是,如果章节编号是罗马数字,那么您就无法获得该选项 - 等效的 *Arabic 开关仅在 Word 认为章节级别标题中的实际数字是数字时才有效(并且它不认为“IV”是数字)。
可以想象解决这个问题的一种方法是使用 VBA 设置一些名为“I”、“II”、“III”、“IV”等的文档变量,其值为“1”、“2”、“3”、“4”等。
然后,您可以使用以下代码代替 Word 插入的 { STYLEREF 1 \s } 字段代码
{ DOCVARIABLE { STYLEREF 1 \s } } 将 IV“映射”至 4。
事实上,它几乎可以正常工作,甚至当您输入一个数字表时,它也会显示您所期望的内容。
但是,问题是,当您下次插入图形标题时,Word 会尝试通过插入它不再能看到的 { STYLEREF } 字段来“修复”您现有的标题。所以您最终会得到“4-IV-1”等。
您还可以通过其他方式设置自己的编号方案,但这样做通常会失去 Word 的其他一些功能(通常是使用 UI 插入交叉引用的功能)。我的观点是,对于交叉引用,尝试让 Word 以与其“设计”相悖的方式工作是不值得的。