字体-如何使用iterop在Word文档中搜索特定字体

我用这样的东西:

doc.Content.Find.Font.Name = "Times New Roman";

但是当我单步执行代码时,Name属性不会更改.
谢谢.

我正在使用VS2010和MS Word 2007,我想查找所有“ Times New Roman”字体并将其替换为“ Arial”.

这是发生了什么:

Word.Application wordApp = new Word.Application();
Word.Documents docs = wordApp.Documents;
doc = docs.Open(fileName, Visible: false);
doc.Content.Find.ClearFormatting();
doc.Content.Find.Replacement.ClearFormatting();

// Here the value of Find.Font.Name and Replacement.Font.Name is ""

doc.Content.Find.Font.Name = "Times New Roman";
doc.Content.Find.Replacement.Font.Name = "Arial";

// The value of Find.Font.Name and Replacement.Font.Name still "" !!!

doc.Content.Find.Execute(Format: true, Replace: Word.WdReplace.wdReplaceAll);
最佳答案
感谢您的答复,但是不,您每次使用点表示法都不会得到新的Find对象.问题是您不应该在这种情况下使用Doc.Content.Find.相反,您必须创建一个新的Range对象并使用其Find.像这样:

Word.Range range = doc.Range(0, doc.Content.End);

转载注明原文:字体-如何使用iterop在Word文档中搜索特定字体 - 代码日志