DocumentStartTrackRevisions(String) Method

Starts automatically marking all further changes you make to the document programmatically as revision changes.

Namespace:  Aspose.Words
Assembly:  Aspose.Words (in Aspose.Words.dll) Version: 20.7.0


public void StartTrackRevisions(
	string author


Type: SystemString
Initials of the author to use for revisions.


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.


Shows how tracking revisions affects document editing.
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!"));
Assert.AreEqual(0, doc.Revisions.Count);


// 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!");
Assert.AreEqual(2, doc.Revisions.Count);

// Stopping the tracking of revisions makes this text appear as normal text
// Revisions are not counted when the document is changed
doc.FirstSection.Body.AppendParagraph("Hello again!");
Assert.AreEqual(2, doc.Revisions.Count);

// 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!");
Assert.AreEqual(4, doc.Revisions.Count);

doc.Save(ArtifactsDir + "Document.StartTrackRevisions.docx");

See Also