DocumentStartTrackRevisions Method (String, DateTime) |
Namespace: Aspose.Words
If you call this method and then make some changes to the document programmatically, save the document and later open the document in MS Word you will see these changes as revisions.
Currently Aspose.Words supports tracking of node insertions and deletions only. Formatting changes are not recorded as revisions.
Automatic tracking of changes is supported both when modifying this document through node manipulations as well as when using DocumentBuilder
This method does not change the TrackRevisions option and does not use its value for the purposes of revision tracking.
Document doc = new Document(); // This text will appear as normal text in the document and no revisions will be counted doc.FirstSection.Body.FirstParagraph.Runs.Add(new Run(doc, "Hello world!")); Console.WriteLine(doc.Revisions.Count); // 0 doc.StartTrackRevisions("Author"); // This text will appear as a revision. // We did not specify a time while calling StartTrackRevisions(), so the date/time that's noted // on the revision will be the real time when StartTrackRevisions() executes doc.FirstSection.Body.AppendParagraph("Hello again!"); Console.WriteLine(doc.Revisions.Count); // 2 // Stopping the tracking of revisions makes this text appear as normal text // Revisions are not counted when the document is changed doc.StopTrackRevisions(); doc.FirstSection.Body.AppendParagraph("Hello again!"); Console.WriteLine(doc.Revisions.Count); // 2 // Specifying some date/time will apply that date/time to all subsequent revisions until StopTrackRevisions() is called // Note that placing values such as DateTime.MinValue as an argument will create revisions that do not have a date/time at all doc.StartTrackRevisions("Author", new DateTime(1970, 1, 1)); doc.FirstSection.Body.AppendParagraph("Hello again!"); Console.WriteLine(doc.Revisions.Count); doc.Save(ArtifactsDir + "Document.StartTrackRevisions.doc");