前一段時間E-iceblue公司的工作人員與我聯繫,希望我能夠給他們的控件做一下測評。由於一直比較忙,拖了快一個月,最近稍微有些空閒的時間,就完成答應的事。
公司官網: http://www.e-iceblue.com/
文檔鏈接: http://www.e-iceblue.com/Tutorials.html
首先,根據官網介紹,E-iceblue是一家.Net、Silverlight和WPF控件提供商,如下:
E-iceblue Co., Ltd. is a vendor of .NET, Silverlight and WPF development components. The goal of e-iceblue is always to offer high-quality components for reading and writing different formats of office files.
以前用進行Office相關的編程,要麼使用的是Office Interop組件,或者使用的是NPOI、Aspose.Words等第三方,各有優劣。
由於我只熟悉WPF,所以這裏試用一下WPF相關的E-iceblue控件。
Spire.Doc for WPF的Demo運行
首先下載該控件安裝程序:
官網上顯示支持以下特性:
這裏我下載的是Free Spire.Doc for .NET,也就是免費版本:
安裝好之後,會提示是否Run Demo,如果確定,就可以看到如下的界面:
這裏面可以找到相關API的例子程序,並可以運行。我們這裏運行一個Hello World看看
點擊Run之後會生成一個Word文檔,文檔中包含控件生成的文字,如下:
我們也可以查看一下這個Demo的源代碼:
核心代碼如下:
//Create word document
Document document = new Document();
//Create a new secition
Section section = document.AddSection();
//Create a new paragraph
Paragraph paragraph = section.AddParagraph();
//Append Text
paragraph.AppendText("Hello World!");
//Save doc file.
document.SaveToFile("Sample.doc",FileFormat.Doc);
//Launching the MS Word file.
WordDocViewer("Sample.doc");
代碼很容易理解:
- 創建一個Document對象(文檔);
- 創建一個Section對象(節);
- 往Section中添加一個Paragraph(段落);
- Paragraph段落中添加文字;
- 最後保存成doc文件,並啓動Word進行預覽。
同樣,編輯一個現有的Word文檔也很容易,代碼如下:
//Create word document
Document document = new Document();
//load a document
document.LoadFromFile(@"..\..\..\..\..\..\Data\Editing.doc");
//Get a paragraph
Paragraph paragraph = document.Sections[0].AddParagraph();
//Append Text
paragraph.AppendText("Editing sample");
//Save doc file.
document.SaveToFile("Sample.doc", FileFormat.Doc);
//Launching the MS Word file.
WordDocViewer("Sample.doc");
步驟爲:
- 創建一個Document對象;
- 讀取一個doc文件到Document對象中;
- 獲取Document中指定Section,並添加一個Paragraph;
- 在Paragraph中添加文字;
- 保存文檔並使用Word進行預覽。
Free Spire.Doc for .NET安裝之後沒有WPF的Demo源碼,Spire.Doc Pack 之後的WPF Demo源碼也很少,所以直接按照文檔上面的指導,在WPF中進行實際測試。
實際coding體驗
實際體驗時,這裏使用的Spire.Doc Pack,因爲只有這個版本的安裝包才提供WPF控件的試用。
下面開始測試。
操作步驟:
- 首先在VS2013中創建一個項目,命名爲Eiceblue_test;
- 將項目的目標框架改爲.Net Framework 4;
- 添加如下兩個dll的引用,Spire.Doc.Wpf.dll和Spire.License.dll;
- 在生成的窗體上放上幾個測試按鈕;
先測試在文檔寫入文字,這個在前面的Demo中也有過,不過前面是WinForm的。
代碼如下,別忘了添加必要的using:
運行效果如下,由於沒有License,所以會有一些額外的Evaluation信息:
整個過程實現得很順利。
當然,該控件也支持其他的Word操作,比如:
- 查找與高亮、替換;
- 格式中的字體、顏色、縮進、風格、文字等;
- 書籤、註釋、頁眉頁腳、超鏈接、圖、表、文本框、嵌入對象、水印等;
- Word轉HTML、圖片、PDF、RTF、Tiff圖片、XML、XPS等
- 文檔加密與解密
- 郵件合併;
- 插入分隔符、合併文檔;
- 設置文檔和頁面參數;
- 創建和填寫表單;
- 宏支持;
- 打印文檔;
以上這些功能在Demo中都可以運行,並查看源代碼。
另外官網的Tutorial也描述的十分詳細和完善,很容易上手。
總結
到這裏爲止,雖然只是簡單瞭解了一下E-iceblue的Office控件的使用,但是已經感覺這個控件的強大和簡潔。與使用Office Interop組件或其他免費第三方控件相比,還是有一定的競爭力。當然,這裏沒有對比和其他付費控件的功能,不能說明孰好孰劣。只能說,如果用戶實際去使用E-iceblue的這款控件,還是有相當不錯的用戶體驗的。