• <menu id="w2i4a"></menu>
  • logo Spire.Doc系列教程

    文檔首頁>>Spire.Doc系列教程>>Word .NET庫組件Spire.Doc系列教程(45):在C# Word 中刪除OLE對象

    Word .NET庫組件Spire.Doc系列教程(45):在C# Word 中刪除OLE對象


    Spire.Doc for .NET是一個專業(yè)的Word .NET庫,設(shè)計用于幫助開發(fā)人員高效地開發(fā)創(chuàng)建、閱讀、編寫、轉(zhuǎn)換和打印任何來自.NET( C#, VB.NET, ASP.NET)平臺的Word文檔文件的功能。

    本系列教程將為大家?guī)鞸pire.Doc for .NET在使用過程中的各類實際操作,上一篇講解如何在C# Word 中添加、修改和提取 OLE,本文將繼續(xù)介紹如何刪除OLE對象。

    點擊下載最新版Spire.Doc for .NET

    12月優(yōu)惠進行時,Spire.Office套包優(yōu)惠7170元起,心動就趕快咨詢在線客服吧!

    推薦閱讀:【想要快速完成文檔格式轉(zhuǎn)換嗎?Spire系列組件格式轉(zhuǎn)換完整攻略來啦!】


    OLE(Object Linking and Embedding,對象連接與嵌入)是一種面向?qū)ο蟮募夹g(shù)。OLE分為兩種形式,一種是嵌入,一種是鏈接。前者是將對象嵌入到文檔中,不管外部對象怎么更改都是以嵌入操作當(dāng)時的對象為準(zhǔn),之后不再改變。而后者是以鏈接形式來保存對象的,外部任何對該對象的更改都會影響文檔。

    刪除OLE

    測試文檔中的OLE對象如下:

    Word .NET庫組件Spire.Doc系列教程:在C# Word 中刪除OLE對象

    using Spire.Doc;
    using Spire.Doc.Documents;
    using Spire.Doc.Fields;
    using System.IO;
    
    
    namespace DeleteOLE_Doc
    {
        class Program
        {
            static void Main(string[] args)
            {
                //實例化一個Document對象,加載一個包含OLE對象的文檔
                Document doc = new Document();
                doc.LoadFromFile(@"test.docx");
    
                //遍歷文檔所有Section          
                foreach (Section sec in doc.Sections)
                {
                    //遍歷Section下面所有的子元素
                    foreach (DocumentObject obj in sec.Body.ChildObjects)
                    {
                        if (obj is Paragraph)
                        {
                            Paragraph par = obj as Paragraph;
                            
                               //遍歷段落中的對象
                            for (int i = 0; i < par.ChildObjects.Count;i++ )
                            {
                                DocumentObject o = par.ChildObjects[i];
                                
                                //獲取ole對象
                                if (o.DocumentObjectType == DocumentObjectType.OleObject)
                                {
                                    DocOleObject Ole = o as DocOleObject;
                                    string s = Ole.ObjectType;
    
                                    if (s == "AcroExch.Document.11")//"AcroExch.Document.11"是指PDF對象對應(yīng)的ProgID
                                    {
                                        //刪除ole對象
                                        obj.ChildObjects.Remove(Ole);
                                    }
    
                                    else if (s == "Excel.Sheet.12")//"Excel.Sheet.12"是指 Excel03之后的工作表對應(yīng)的ProgID
                                    {
                                        //刪除ole對象
                                        obj.ChildObjects.Remove(Ole);
                                        
                                    }
    
                                    else if (s == "Word.Document.12") //"Word.Document.12"是指03之后的Word對應(yīng)的ProgID
                                    {
                                        //刪除ole對象
                                        obj.ChildObjects.Remove(Ole);
                                        
                                    }
                                }
                            }
                        }
                    }
                }
    
                //保存文檔
                doc.SaveToFile("DeleteOLE.docx",FileFormat.Docx2013);
            }
        }
    }

    OLE對象刪除結(jié)果:

    Word .NET庫組件Spire.Doc系列教程:在C# Word 中刪除OLE對象

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    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); })();