小编Rei*_*ein的帖子

更改OpenXML Word文档中的字体颜色(C#)

我一直在寻找几个小时,我似乎无法找到一个可靠的答案.我有一个包含内容控件的现有文档,我需要使用外部数据编辑文本.如果其中一个控件的数据不存在,那么我需要用适当的通知替换文本并更改字体颜色.

我有文本条目和所有工作正常,唯一似乎无法完成其工作的部分是更改字体颜色.我当前的代码没有给我任何错误,并且正在运行这个方法就好了,但是当我查看完成的文档时,它仍然是纯黑色文本.

我的换色方法:(输入是具有相同标签的所有内容控件的列表)

public void SetBlueText(List<SdtElement> sdtElement)
{
    foreach (SdtElement element in sdtElement)
    {
        if (element != null)
        {
            RunProperties runProperties = element.Descendants<RunProperties>().FirstOrDefault();
            runProperties.Color = new DocumentFormat.OpenXml.Wordprocessing.Color() { Val = "0EBFE9" };
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

此外,将这两行简化为此/具有相同的效果

element.Descendants<RunProperties>().FirstOrDefault().Color = 
                        new DocumentFormat.OpenXml.Wordprocessing.Color() { Val = "0EBFE9" };
Run Code Online (Sandbox Code Playgroud)

c# openxml

9
推荐指数
2
解决办法
1万
查看次数

标签 统计

c# ×1

openxml ×1