如何使用 C# 将带有字体颜色的文本添加到 word 文档?

How to add a text with font color to word document using C#?

我有一个 Word 文档,我想使用 C# 在它的末尾添加一些带有字体颜色的单词。谁能解释一下如何添加内容然后格式化它?

我尝试使用以下代码,但它不起作用

doc1.Words[i].InsertAfter("Text to be added");   
doc1.Words[i].Font.ColorIndex = WdColorIndex.wdBlue;

关键是使用 Range 对象。您必须定义一个范围,然后如果您要添加的内容不应该替换范围中已有的内容,则范围需要为 "collapsed"。 (把它想象成进行选择然后按向右或向左箭头键以获得闪烁的插入点(光标))。

一旦你有了一个范围,你就可以随心所欲地操纵它——它会保持稳定。同样,有点像在作为用户工作时格式化选择。

Word.Range rng = doc1.Words[i];
object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;
rng.Collapse(ref oCollapseEnd);
rng.Text = "the new text";
rng.Font.ColorIndex = Word.WdColorIndex.wdBlue;