• <menu id="w2i4a"></menu>
  • logo Aspose.Words開發(fā)者指南

    文檔首頁>>Aspose.Words開發(fā)者指南>>Aspose.Words for .NET使用章節(jié)教程(2):如何處理文檔分段——Aspose.Words中的分段

    Aspose.Words for .NET使用章節(jié)教程(2):如何處理文檔分段——Aspose.Words中的分段


    Aspose.Words For .Net是一種高級Word文檔處理API,用于執(zhí)行各種文檔管理和操作任務(wù)。API支持生成,修改,轉(zhuǎn)換,呈現(xiàn)和打印文檔,而無需在跨平臺應(yīng)用程序中直接使用Microsoft Word。此外,API支持所有流行的Word處理文件格式,并允許將Word文檔導(dǎo)出或轉(zhuǎn)換為固定布局文件格式和最常用的圖像/多媒體格式。

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

    接下來我們將進(jìn)入“如何使用Aspose.Words以編程方式處理文檔分段”的介紹。在生成文檔時,使用section非常有用。您可以組合文檔,根據(jù)從多個模板文檔復(fù)制的多個部分構(gòu)建輸出文檔,或者根據(jù)某些應(yīng)用程序邏輯刪除不需要的部分,從而有效地將公共模板文檔過濾到特定場景。

    Aspose.Words中的部分

    文檔的各節(jié)由Section和SectionCollection類表示。Section對象是Document節(jié)點的直接子節(jié)點,可以通過Document.Sections屬性訪問。

    ▲獲得一分段


    每個分段由一個Section對象表示,該對象可以通過索引從Document.Sections集合中獲取。默認(rèn)頁邊距、頁眉/頁腳距離和列間距取決于模擬MS Word行為的當(dāng)前區(qū)域。例如,現(xiàn)在英語(美國)和英語(英國)的所有頁邊距都是1英寸。左,右,上邊距為2.5厘米; 德國底部邊距為2厘米。如果沒有為提及參數(shù)設(shè)置顯式值,則新默認(rèn)值用于新文檔和加載文檔。

    下面的代碼示例顯示了如何訪問指定索引處的節(jié):

    //指向documents目錄的路徑。
    string dataDir = RunExamples.GetDataDir_WorkingWithSections();
    Document doc = new Document(dataDir + "Document.doc");
    Section section = doc.Sections[0];
    section.PageSetup.LeftMargin = 90; // 3.17 cm
    section.PageSetup.RightMargin = 90; // 3.17 cm
    section.PageSetup.TopMargin = 72; // 2.54 cm
    section.PageSetup.BottomMargin = 72; // 2.54 cm
    section.PageSetup.HeaderDistance = 35.4; // 1.25 cm
    section.PageSetup.FooterDistance = 35.4; // 1.25 cm
    section.PageSetup.TextColumns.Spacing = 35.4; // 1.25 cm

    ▲添加一個分段


    Document對象提供了可以使用Document.Sections訪問的節(jié)集合。這將返回包含文檔部分的SectionCollection對象。然后,您可以使用此對象上的SectionCollection.Add方法將一個節(jié)添加到文檔的末尾。下面的代碼示例顯示了如何將一個部分添加到文檔的末尾:

    Document doc = new Document(dataDir);
    Section sectionToAdd = new Section(doc);
    doc.Sections.Add(sectionToAdd);

    ▲刪除一個分段


    以與上面討論的相同方式,使用Document.Sections檢索文檔的部分。然后,可以使用SectionCollection.Remove刪除指定的節(jié)或SectionCollection.RemoveAt以刪除指定索引處的節(jié)。 下面的代碼示例顯示了如何刪除指定索引處的節(jié):

    Document doc = new Document(dataDir);
    doc.Sections.RemoveAt(0);

    下面的代碼示例展示了如何從文檔中刪除所有部分:

    Document doc = new Document(dataDir);
    doc.Sections.Clear();

    ▲添加分段內(nèi)容


    如果要復(fù)制和插入除了節(jié)分隔符和節(jié)屬性之外的節(jié)的主要文本,請使用Section.PrependContentSection.AppendContent為要復(fù)制的內(nèi)容傳遞Section對象。如果沒有創(chuàng)建新的分段,頁眉和頁腳不會被復(fù)制。前一種方法在該部分的開頭插入內(nèi)容的副本,而后者在該部分的末尾插入內(nèi)容的副本。下面的代碼示例顯示了如何附加現(xiàn)有部分的內(nèi)容:

    //文檔目錄的路徑。
    string dataDir = RunExamples.GetDataDir_WorkingWithSections();
    Document doc = new Document(dataDir + "Section.AppendContent.doc");
    // This is the section that we will append and prepend to.
    Section section = doc.Sections[2];
    
    //復(fù)制第1部分的內(nèi)容并將其插入指定部分的開頭。
    Section sectionToPrepend = doc.Sections[0];
    section.PrependContent(sectionToPrepend);
    
    //復(fù)制第二部分的內(nèi)容并將其插入指定部分的末尾。
    Section sectionToAppend = doc.Sections[1];
    section.AppendContent(sectionToAppend);

    ▲刪除分段內(nèi)容


    要刪除節(jié)的主要文本,請使用Section.ClearContent。要刪除節(jié)中的頁眉和頁腳,請調(diào)用Section.ClearHeadersFooters。下面的示例顯示了如何刪除節(jié)的主要內(nèi)容:

    //文檔目錄的路徑。
    string dataDir = RunExamples.GetDataDir_WorkingWithSections();
    
    Document doc = new Document(dataDir + "Document.doc");
    Section section = doc.Sections[0];
    section.ClearContent();

    ▲克隆一分段


    使用Section.Clone方法創(chuàng)建特定節(jié)的副本。下面的示例顯示了如何創(chuàng)建特定部分的副本:

    //文檔目錄的路徑。
    string dataDir = RunExamples.GetDataDir_WorkingWithSections();
    
    Document doc = new Document(dataDir + "Document.doc");
    Section cloneSection = doc.Sections[0].Clone();

    ▲在文檔之間復(fù)制分段


    將一個文檔完全或部分復(fù)制到另一個文檔是一項非常流行的任務(wù) 這是實現(xiàn)這一點的“模式”。在插入來自其他文檔的任何節(jié)點之前,必須使用Document.ImportNode方法導(dǎo)入該節(jié)點。該Document.ImportNode方法使原始節(jié)點的副本,并更新所有的內(nèi)部文檔特定的屬性,如清單和樣式,使他們的目標(biāo)文檔中有效。 下面的示例顯示了如何在文檔之間復(fù)制分段:

    //文檔目錄的路徑。
    string dataDir = RunExamples.GetDataDir_WorkingWithSections();
    
    Document srcDoc = new Document(dataDir + "Document.doc");
    Document dstDoc = new Document();
    
    Section sourceSection = srcDoc.Sections[0];
    Section newSection = (Section)dstDoc.ImportNode(sourceSection, true);
    dstDoc.Sections.Add(newSection);
    dataDir = dataDir + "Document.Copy_out.doc";
    dstDoc.Save(dataDir);


    *想要獲取Aspose.Words正版授權(quán)可聯(lián)系在線客服哦~


    ASPOSE技術(shù)交流QQ群已開通,各類資源及時分享,歡迎交流討論!(掃描下方二維碼加入群聊)

    1560231367164.png

    850X100.png


    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();