如何重置 Microsoft Word 链接样式中的颜色

如何重置 Microsoft Word 链接样式中的颜色

我定义标题 1标题 9风格标题 N是基于标题 N-1进行了一些额外的样式更改。这使我能够更新标题风格在各个层面都保持一致。

然而,在某个时间点,我设置了标题 8样式,无法撤消此更改。最终结果是,每当我编辑标题 1 的字体颜色时,所有标题样式标题 1标题 7显示更新的字体颜色,但停止于标题 8

如何纠正这个问题? 甚至使用 VBA 修复也是可行的。

答案1

我找到了一个 VBA 修复程序来重置任何给定的样式,它确实有效。以下是 VBA 代码:

    Private Sub ClearStyle(sStyleName As String)
        Dim oStyle As Variant
        Set oStyle = ActiveDocument.Styles(sStyleName)

        With ActiveDocument.Styles(oStyle)
            If .BaseStyle <> "" Then
                .Font = .BaseStyle.Font
                .ParagraphFormat = .BaseStyle.ParagraphFormat
            End If
        End With
    End Sub

    Public Sub clearDirtyStyles()
        ClearStyle "Heading 8"
    End Sub

通过从损坏的模板调用 ClearDirtyStyles VBA 宏,可以重置样式。

Heading 1我在 MS Word for Mac 2016 上重新测试了它,它有效。亲自尝试一下,在和Heading 2中尝试字体颜色Heading 3,然后运行ClearStyle "Heading 3"​​。

答案2

TL;DR:编辑样式的 XML 定义。

将值设置为 BaseStyle 值是一次性修复,不是恢复继承的某些东西。这些值明确设置为基本样式的值,但不能继承。

示例:字符样式 C1 基于段落样式列表编号 2 的默认值。LN2 基于 Normal。Normal 字体为 Calibri 11 pt black。打开 C1,您会看到其字体和大小为空白。更改为 Arial 10,现在它永远是一个显式值。运行宏,C1 将重新设置为 Calibri 11 pt black - 而不是空白(继承)!更改 LN2,C1 保持 Calibri 11 pt black - 不是 LN2 的字体和大小。我很难过。

从 XML 角度来看,样式呼呼w:color设置为绿色。其基本样式有 11 pt 文本

<w:style w:type="character" w:customStyle="1" w:styleId="grrr">
    <w:name w:val="grrr"/>
    <w:basedOn w:val="DefaultParagraphFont"/>
    <w:uiPriority w:val="1"/>
    <w:qFormat/>
    <w:rsid w:val="009014C2"/>
    <w:rPr>
        <w:color w:val="00B050"/>
    </w:rPr>
</w:style>

w:sz未定义注意。

手动更改为 8 pts 后,XML 显示如下: <w:sz w:val="16"/>

使用上面的 .BaseStyle 宏后,在 XML 中明确将其设置为 11 pts: <w:sz w:val="22"/>

那是不是继承。这是对基本样式值的明确设置。

<w:sz w:val="22"/>从 XML 中手动删除已恢复的继承。这是一个荒谬的解决方案。

在 UI 中,我们看到字体大小为 11 pts。这与基本样式的值相同,并且是使用 BaseStyle 方法设置的,但这与手动将其设置为 11 相同。 在此处输入图片描述

当我更改基本样式时,使用 Asset Title 格式化的文本不会改变。没有继承 - 只有 11 pts。

编辑 docname.docx\word\styles.xml 后(没有如果我们删除“继承”下的“线性化!”,<w:sz w:val="22"/>我们会看到继承已恢复——字体大小控件为空,这是 Word 告诉我们该值是继承的方式。

在此处输入图片描述

当我更改基本样式时,使用 Asset Title 格式化的文本会发生变化。存在继承 - 它是 11 pts,因为它的父级是 11 pts。

相关内容