段落样式¶
段落样式提供字符格式(字体)和段落格式属性。字符格式继承自 CharacterStyle
主要体现在 font
属性。同样,大多数特定于段落的属性来自 ParagraphFormat
对象 paragraph_format
属性。
一些其他属性是特定于段落样式的。
next_paragraph_style¶
这个 next_paragraph_style 属性提供对样式的访问,该样式将由Word自动分配给在具有此样式的段落之后插入的新段落。此属性对于通常在序列中只出现一次的样式(如标题)最有用。
默认情况下,对插入的段落使用相同的样式。这涉及最常见的情况;例如,正文段落 Body Text 风格后面通常是一个风格相同的段落。
预期用途¶
此属性的优先级用例是提供可分配给段落的工作样式。属性将始终提供有效的段落样式,每当无法确定更具体的样式时,将默认为当前样式。
虽然这会使API中的某些细节变得模糊,但它解决了预期的最常见的用例。例如,需要检测缺失样式的开发人员可以很容易地使用oxml层来检查XML,如果这些用例比预期的更常见,则可以添加更多的特性。
行为¶
违约。 默认的下一个段落样式是相同的段落样式。
如果下一段落样式未指定或无效,则使用默认值,包括以下条件:
不 w:next 子元素存在
具有在中指定的styleId的样式 w:next/@w:val 文档中不存在。
中指定的样式 w:next/@w:val 不是段落样式。
在所有这些情况下,当前的风格 (self )返回。
示例XML¶
段落_样式。下一个段落样式是样式 ['酒吧'] ::
<w:style w:type="paragraph" w:styleId="Foo">
<w:name w:val="Foo"/>
<w:next w:val="Bar"/>
</w:style>
语义学。 这个 w:next 子元素是可选的。
省略时,下一个样式与当前样式相同。
如果不存在具有匹配styleId的样式,则 w:next 元素被忽略,下一个样式与当前样式相同。
如果找到的样式不是段落类型,则 w:next 元素被忽略,下一个样式与当前样式相同。
候选方案¶
>>> styles = document.styles
>>> paragraph_style = styles['Foo']
>>> paragraph_style.next_paragraph_style == paragraph_style
True
>>> paragraph_style.next_paragraph_style = styles['Bar']
>>> paragraph_style.next_paragraph_style == styles['Bar']
True
>>> paragraph_style.next_paragraph_style = None
>>> paragraph_style.next_paragraph_style == paragraph_style
True
架构摘要¶
<xsd:complexType name="CT_Style">
<xsd:sequence>
<xsd:element name="name" type="CT_String" minOccurs="0"/>
<xsd:element name="aliases" type="CT_String" minOccurs="0"/>
<xsd:element name="basedOn" type="CT_String" minOccurs="0"/>
<xsd:element name="next" type="CT_String" minOccurs="0"/>
<xsd:element name="link" type="CT_String" minOccurs="0"/>
<xsd:element name="autoRedefine" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="hidden" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="uiPriority" type="CT_DecimalNumber" minOccurs="0"/>
<xsd:element name="semiHidden" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="unhideWhenUsed" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="qFormat" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="locked" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="personal" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="personalCompose" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="personalReply" type="CT_OnOff" minOccurs="0"/>
<xsd:element name="rsid" type="CT_LongHexNumber" minOccurs="0"/>
<xsd:element name="pPr" type="CT_PPrGeneral" minOccurs="0"/>
<xsd:element name="rPr" type="CT_RPr" minOccurs="0"/>
<xsd:element name="tblPr" type="CT_TblPrBase" minOccurs="0"/>
<xsd:element name="trPr" type="CT_TrPr" minOccurs="0"/>
<xsd:element name="tcPr" type="CT_TcPr" minOccurs="0"/>
<xsd:element name="tblStylePr" type="CT_TblStylePr" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="type" type="ST_StyleType"/>
<xsd:attribute name="styleId" type="s:ST_String"/>
<xsd:attribute name="default" type="s:ST_OnOff"/>
<xsd:attribute name="customStyle" type="s:ST_OnOff"/>
</xsd:complexType>
<xsd:complexType name="CT_String">
<xsd:attribute name="val" type="s:ST_String" use="required"/>
</xsd:complexType>