创建启用跟踪更改的 OOXML 文档

Chr*_*sco 4 openxml

如何创建启用跟踪更改的 .docx?我被告知word/settings.xml我应该修改w:proofState但我发现的 OOXML 在线文档中的所有信息都与语法和拼写检查有关,但与启用跟踪更改无关。

pet*_*ids 5

它在,word/settings.xml但您要查找的元素是w:trackRevisions

要使用 OpenXML SDK 在 C# 中执行此操作,您可以使用TrackRevisions该类。以下代码将创建一个包含一个段落并打开更改跟踪的文档:

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();
} 
Run Code Online (Sandbox Code Playgroud)