创建启用跟踪更改的 OOXML 文档
Creating a OOXML document with Track Changes enabled
如何创建启用跟踪更改的 .docx?我在 word/settings.xml
中被告知我应该修改 w:proofState
但我发现 OOXML 在线文档中的所有信息 属性 与语法和拼写检查有关,但与启用跟踪更改无关。
它在 word/settings.xml
但您要查找的元素是 w:trackRevisions
。
要使用 OpenXML SDK 在 C# 中执行此操作,您可以使用 TrackRevisions
class。以下代码将创建一个包含一个段落并启用更改跟踪的文档:
using (WordprocessingDocument package = WordprocessingDocument.Create(filename, WordprocessingDocumentType.Document))
{
// Add a new main document part.
package.AddMainDocumentPart();
//create a body and a paragraph
Body body = new Body();
Paragraph paragraph = new Paragraph();
paragraph.AppendChild(new Run(new Text("This document should have change tracking switched on")));
body.AppendChild(paragraph);
package.MainDocumentPart.Document = new Document(body);
//change tracking code
DocumentSettingsPart documentSettingsPart = package.MainDocumentPart.AddNewPart<DocumentSettingsPart>();
Settings settings = new Settings();
TrackRevisions trackRevisions = new TrackRevisions();
settings.Append(trackRevisions);
documentSettingsPart.Settings = settings;
// Save changes to the main document part.
package.MainDocumentPart.Document.Save();
}
如何创建启用跟踪更改的 .docx?我在 word/settings.xml
中被告知我应该修改 w:proofState
但我发现 OOXML 在线文档中的所有信息 属性 与语法和拼写检查有关,但与启用跟踪更改无关。
它在 word/settings.xml
但您要查找的元素是 w:trackRevisions
。
要使用 OpenXML SDK 在 C# 中执行此操作,您可以使用 TrackRevisions
class。以下代码将创建一个包含一个段落并启用更改跟踪的文档:
using (WordprocessingDocument package = WordprocessingDocument.Create(filename, WordprocessingDocumentType.Document))
{
// Add a new main document part.
package.AddMainDocumentPart();
//create a body and a paragraph
Body body = new Body();
Paragraph paragraph = new Paragraph();
paragraph.AppendChild(new Run(new Text("This document should have change tracking switched on")));
body.AppendChild(paragraph);
package.MainDocumentPart.Document = new Document(body);
//change tracking code
DocumentSettingsPart documentSettingsPart = package.MainDocumentPart.AddNewPart<DocumentSettingsPart>();
Settings settings = new Settings();
TrackRevisions trackRevisions = new TrackRevisions();
settings.Append(trackRevisions);
documentSettingsPart.Settings = settings;
// Save changes to the main document part.
package.MainDocumentPart.Document.Save();
}