Ms word MS Word OOXML样式名称问题

Ms word MS Word OOXML样式名称问题,ms-word,xml-parsing,openxml,Ms Word,Xml Parsing,Openxml,我一直在搜索MS Word中的所有默认样式 对于某些特定的样式,我注意到样式名称在MS Word应用程序UI和OOXML中是不同的 e、 g.在Word文档中插入一些注释。样式w:styleId=“CommentText”正在styles.xml中填充。styles.xml中此样式的名称为'annotation text',而在应用程序中不存在具有此名称的样式(尽管名称为注释文本的样式在应用程序UI中存在) 我用注释文本样式搜索了注释文本样式的一些映射,但没有发现任何映射 对于页眉和页脚样式,可

我一直在搜索MS Word中的所有默认样式

对于某些特定的样式,我注意到样式名称在MS Word应用程序UI和OOXML中是不同的

e、 g.在Word文档中插入一些注释。样式w:styleId=“CommentText”正在styles.xml中填充。styles.xml中此样式的名称为'annotation text',而在应用程序中不存在具有此名称的样式(尽管名称为注释文本的样式在应用程序UI中存在)

我用注释文本样式搜索了注释文本样式的一些映射,但没有发现任何映射

对于页眉页脚样式,可以复制相同的场景

应用程序中这些样式的名称分别为'Header'Footer(名称的首字母大写)


我正在尝试了解如何将styles.xml中的样式名称映射到应用程序UI中的名称。

如果您想了解内置样式名称到Open xml中使用的样式id的映射,可以创建一个包含所有内置样式的示例文档,然后检查该文件的Open xml

此宏将创建具有所有内置段落样式的文档:

Sub CreateDocWithBuiltinStyles()

    Dim style As style
    Dim doc As Document
    Dim rng As Range

    Set doc = Application.Documents.Add
    Set rng = doc.Range

    For Each style In doc.Styles
        If style.BuiltIn And _
          (style.Type = wdStyleTypeParagraph Or _
           style.Type = wdStyleTypeLinked Or _
           style.Type = wdStyleTypeCharacter Or _
           style.Type = wdStyleTypeParagraphOnly) Then

            Set rng = doc.Range
            rng.Collapse wdCollapseEnd
            rng.style = style
            rng.Text = style.NameLocal & vbCrLf

        End If
    Next
End Sub
然后,您必须检查生成的包中的document.xml文件,您可以很容易地看到哪个显示名称属于哪个样式id