编号级别列表概览

译/桂浮云,2020年2月18日

编号或者级别是用数字、字母和符合单独标记段落的方法。OOXML中,需要先定义一组特别的编号规则。

numbering.xml片段(part)文件中,根元素numbering之下,<w:abstractNum>元素就是用来定义文档需要的这些规则的。定义是“abstract”(即抽象)的,并且并不直接引用到文档之中。相反,需要用<w:num>元素创建抽象编号定义的示例,此元素也是在numbering.xml片段文件内。<w:num>定义的示例可以给出关于抽象定义的精确声明,或者覆盖定义,或者对抽象定义作异常处理。最终,这些实例才能被文档内容所引用。numbering.xml范例如下:

<w:numbering>
<w:abstractNum w:abstractNumId="0">
<w:nsid w:val="099A081C"/>
<w:multiLevelType w:val="hybridMultilevel"/>
<w:lvl w:ilvl="0">
<w:start w:val="1"/>
<w:numFmt w:val="upperLetter"/>
<w:lvlText w:val="%1."/>
<w:lvlJc w:val="start"/>
<w:pPr>
<w:ind w:start="360" w:hanging="360"/>
</w:pPr>
<w:rPr>
<w:rFonts w:ascii="Arial Black" w:hAnsi="Arial Black"/>
<w:color w:val="C00000"/>
<w:sz w:val="28"/>
</w:rPr>
</w:lvl>
</w:abstractNum>

<w:num w:numId="1">
<w:abstractNumId w:val="0"/>
</w:num>
</w:numbering>

以上代码定义了一个层级样式(只有一个层级:<w:lvl w:ilvl="0">);同时创建了一个实例,编号为1(<w:num w:NumId="1">),直接引用了abstractNum,没有任何改变或异常处理。然后,我们把该实例加入到文档之中:

<w:p>
<w:pPr>
<w:pStyle w:val="ListParagraph"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
</w:pPr>
<w:r>
<w:t>This is the first numbered paragraph.</w:t>
</w:r>
</w:p>

注意:上例中编号引用包含了一个到层级的直接引用,这是因为<w:numPr>同时包含了倒编号定义(numId)和到层级(level ilvl)的两个引用。其他可以在内容中引用层级的可能方式还可以通过引用段落样式。也就是说,<w:abstractNum>之内附属层级lvl可以包含一个pStyle,其值为ListParagraph的值。在这种情况下,内容仅包含到编号定义实例(numId)的引用,但也引用了段落样式。相同样式将在编号定义引用中找到,并且层级可以用在段落中。

示例效果

编号定义片段文件

根元素为<w:numbering>,子元素(忽略了跟踪变更用的numIdMacAtLeanup)包括:

元素 描述
abstractNum 抽象编号定义
num 指定编号定义的唯一性实例。通过子元素<w:abstractNumId>引用一个已定义的<w:abstractNum>),也因此会继承所引用的<w:abstractNum>属性。这些继承的属性通过<w:lvlOverride>子元素,可以在实例中重写,因此实质上是创建了一个新的编号实例变种。numId属性,指定编号段落对应的唯一ID。子元素包括abstractNumId和lvlOverride。
numPicBullet 指定编号定义采用符号编号时的图片呈现方式。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 译/桂浮云,2020年2月15日 原文链接:http://officeopenxml.com/WPparagrap...
    桂浮云阅读 6,360评论 0 1
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,084评论 2 9
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 10,036评论 0 5
  • js简介 Js是一种基于事件和对象驱动的解释性、松散性的语言。 一切皆对象 javascript 布兰登艾奇 ...
    塔库纳玛哈哈阅读 5,051评论 0 2
  • 1,NSObject中description属性的意义,它可以重写吗?答案:每当 NSLog(@"")函数中出现 ...
    eightzg阅读 9,699评论 2 19

友情链接更多精彩内容