Aspose.Words for .NET使用教程:使用文檔之管理跟蹤更改

Aspose.Words For .Net是一種高級Word文檔處理API,用於執行各類文檔管理和操做任務。API支持生成,修改,轉換,呈現和打印文檔,而無需在跨平臺應用程序中直接使用Microsoft Word。此外,API支持全部流行的Word處理文件格式,並容許將Word文檔導出或轉換爲固定佈局文件格式和最經常使用的圖像/多媒體格式。git

下載Aspose.Words for .NET最新試用版github

訪問樣式


您可使用Document.Styles屬性獲取文檔中定義的樣式集合。此集合包含文檔中的內置和用戶定義樣式。能夠經過名稱/別名,樣式標識符或索引獲取特定樣式。 下面的代碼示例顯示瞭如何訪問文檔中定義的樣式集合。編程

 

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// Load the template document.
Document doc = new Document(dataDir + "TestFile.doc");
// Get styles collection from document.
StyleCollection styles = doc.Styles;
string styleName = "";
// Iterate through all the styles.
foreach (Style style in styles)
{
    if (styleName == "")
    {
        styleName = style.Name;
    }
    else
    {
        styleName = styleName + ", " + style.Name;
    }
}

 

獲取文檔變量


您可使用Document.Variables屬性獲取文檔變量的集合。變量名稱和值是字符串。下面的代碼示例顯示瞭如何枚舉文檔變量。佈局

 

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// Load the template document.
Document doc = new Document(dataDir + "TestFile.doc");
string variables = "";
foreach (KeyValuePairentry in doc.Variables)
{
    string name = entry.Key.ToString();
    string value = entry.Value.ToString();
    if (variables == "")
    {
        // Do something useful.
        variables = "Name: " + name + "," + "Value: {1}" + value;
    }
    else
    {
        variables = variables + "Name: " + name + "," + "Value: {1}" + value;
    }
}

 

管理跟蹤更改


下面咱們一塊兒來了解Aspose.Words如何支持Microsoft Word的Track Changes功能。 Microsoft Word中的「跟蹤更改」功能(也稱爲「審閱」)容許您跟蹤用戶對內容和格式的更改。啓用此功能後,將直觀地突出顯示文檔的全部插入,刪除和修改元素,並提供有關更改者,時間和內容的信息。攜帶有關更改內容的信息的對象稱爲「跟蹤更改」或「修訂」。spa

Aspose.Words保留評論和修訂orm

當您使用Aspose.Words打開Microsoft Word文檔而後保存它時,將保留文檔中的全部註釋和修訂。對象

接受修訂教程

該Document.AcceptAllRevisions方法讓你「接受」文檔中的全部修訂。調用此方法相似於在Microsoft Word中選擇「接受全部更改」。Aspose.Words實際上會刪除「刪除修訂版」的片斷,保留「插入修訂版」的片斷並應用格式更改。請注意,此操做期間註釋不受影響。在Aspose.Words中,您能夠經過調用Document.AcceptAllRevisions方法接受對文檔的跟蹤更改。 下面的代碼示例顯示瞭如何接受文檔中的全部跟蹤更改。索引

 

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
Document doc = new Document(dataDir + "Document.doc");

// Start tracking and make some revisions.
doc.StartTrackRevisions("Author");
doc.FirstSection.Body.AppendParagraph("Hello world!");

// Revisions will now show up as normal text in the output document.
doc.AcceptAllRevisions();

dataDir = dataDir + "Document.AcceptedRevisions_out.doc";
doc.Save(dataDir);

以編程方式訪問修訂資源

能夠在Word文檔中插入,刪除和格式化更改修訂。Aspose.Words容許您以編程方式檢測某些類型的修訂.InsInsertRevisionIsDeleteRevisionIsMoveFromRevisionIsMoveToRevision屬性可用於Run和Paragraph對象,容許您在更改跟蹤時檢測此對象是否在Microsoft Word中插入,刪除或移動若是文檔至少有一個版本,則Document.HasRevisions屬性返回true。能夠將Document.TrackRevisions屬性設置爲true,以指示是否啓用Microsoft Word中的修訂跟蹤。

 

Document doc = new Document(dataDir + "Revisions.docx");

ParagraphCollection paragraphs = doc.FirstSection.Body.Paragraphs;
for (int i = 0; i < paragraphs.Count; i++)
{
    if (paragraphs[i].IsMoveFromRevision)
        Console.WriteLine("The paragraph {0} has been moved (deleted).", i);
    if (paragraphs[i].IsMoveToRevision)
        Console.WriteLine("The paragraph {0} has been moved (inserted).", i);
}

訪問修訂組

Aspose.Words中的修訂是一個文檔節點的更改。相鄰文檔節點中的相同類型的一組順序修訂造成修訂組。相似的修訂組顯示在MS Word的「審閱窗格」中。RevisionGroup類表示一組順序的Revision對象。 下面的代碼示例顯示瞭如何獲取修訂版及其組。

 

Document doc = new Document(dataDir + "Revisions.docx");

foreach (RevisionGroup group in doc.Revisions.Groups)
{
    Console.WriteLine("{0}, {1}:", group.Author, group.RevisionType);
    Console.WriteLine(group.Text);
}

得到保護類型

你能夠經過獲取Document.ProtectionType屬性的值來檢索文檔保護的類型。下面的代碼示例顯示瞭如何獲取當前在文檔中設置的保護類型。

 

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(inputFileName);
ProtectionType protectionType = doc.ProtectionType;

以編程方式訪問評論

註釋在文檔樹中表示爲Comment類的對象。您能夠像Aspose.Words文檔對象模型中的任何其餘節點同樣以編程方式添加,刪除或修改註釋。Comment是一個複合節點,能夠包含構成註釋文本的段落和表格。Comment類還提供對註釋做者的姓名和首字母的訪問。

 

設置視圖選項


在Microsoft Word中打開文檔時,能夠控制文檔的視圖。例如,您可能但願切換到打印佈局或更改縮放值。使用Document對象的Settings.ViewOptions屬性設置視圖選項。如下代碼顯示如何確保在Microsoft Word中打開時文檔以50%縮放顯示。

 

// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// Load the template document.
Document doc = new Document(dataDir + "TestFile.doc");
// Set view option.
doc.ViewOptions.ViewType = ViewType.PageLayout;
doc.ViewOptions.ZoomPercent = 50;

dataDir = dataDir + "TestFile.SetZoom_out.doc";
// Save the finished document.
doc.Save(dataDir);

 

若是你有任何問題或意見,可在下方評論區留言,點擊資源列表查看更多教程資源~

相關文章
相關標籤/搜索