WordprocessingML内容概述

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

原文链接:http://officeopenxml.com/WPcontentOverview.php

WordprocessingML文档包包含着若干不同的片段(part)文件,大多数情况下是XML文件。而实际内容的大部分都会在主文档片段中找到。主文档片段的内容则主要由段落(paragraph)和表格(table)组成。

段落(Paragraphs)

段落(<w:p>)是块级内容(block-level content)的基本单元。换句话说,段落是在新行开始的分块内容。典型的段落包含两部分:格式(或者属性)在先、内容在后。

格式可以直接声明(如:本段应该水平居中),或者声明间接引用一个样式(如:本段应该使用X样式,X样式会居中段落),两种声明的组合也是可以的。段落格式包含在<w:pPr>之内。

段落内容包含在一程(run)或多程(runs)标记<w:r>之内。程(run)是非块内容(non-block content),用来定义没必要用新行开始的文本区域。像段落一样,格式(属性)声明在先,内容在后。<w:rPr>中指定的格式,可以直接用来格式化文本,间接的格式通过引用样式实现,或者两种方式都采用。

一程(run)可以被分成更小的若干程(run),或者具有相同属性的若干程(run)可以组合为一程(run)。因此,举个例子,如果一句话中包含了一个加粗的单词,那么这句话必须被断开成多个程(run),以解释这个句子的加粗和不加粗组件。

一程(run)的内容主要由文本元素(<w:t>)组合而成,即实际的字符数据,组合之后即为内容。一程(run)也可能包含断开(breaks)、跳格(tabs)、符号(symbols)、图像(images)及域(fields,译者注:插入文档中的变量)。以下是一个非常简单的段落示例:

<w:p>
<w:pPr>
<w:jc w:val="center">
<w:pPr>
<w:r>
<w:rPr>
<w:b/>
</w:rPr>
<w:t>This is text.</w:t>
</w:r>
</w:p>

上例及几乎所有范例中忽略掉的可选信息还包括跟踪编辑会话信息。通常是以某种形式的属性来表示,被忽略是为了让我们目的更加明确。如:

<w:p w:rsidR="00D57EDE" w:rsidRDefault="00D57EDE"***>
. . .
</w:p>

(下面两段内容翻译自:http://officeopenxml.com/WPparagraph.php

<w:p>元素内包含的诸多元素,大多与轨迹修订和添加自定义XML相关,内部子元素见下:

元素(Element) 描述
bookmarkStart 书签开始
bookmarkEnd 书签结束
r 段落内容的一程(run)
pPr 段落属性集合
fldSimple 简易域(field)
hyperlink 超级链接(hyperlink)

与Open Document Format(ODF)相关属性:

ODF中用<text:p>标记指定段落。段落是ODF文档文本的基本单元,并包含混杂的内容。大多数情况下,会在<office:text>元素内包含一个text:style-name属性。(参见:Open Document Format for Office Applications Version 1.2 (May, 2011) § 5.1.3.)

表格(Tables)

表格(Tables)是另外一种块级内容类型,由行、列组成。表格(<w:tal>)说明分为三部分:与段落(paragraph)和程(run)类似,属性在前,并在<w:tblPr>内部定义。

但与段落(paragraph)和程(run)不同的是,一张表的内容被分成若干行,且不存在两行需要包含相同编号的列的情况。所以,表格的定义增加了一定级别的复杂度。WordprocessingML的解决方案是在表格内用<w:tblGrid>定义格子(grid)。表格的格子定义,是表格定义的第二部分内容。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容