原創(chuàng)|使用教程|編輯:郝浩|2013-09-22 14:31:57.000|閱讀 572 次
概述:ImageGear for .NET提供了目前最先進(jìn)的用于創(chuàng)建、控制、更加安全、高質(zhì)量的成像應(yīng)用程序。本文將講解如何使用ImageGear for .NET創(chuàng)建一個(gè)簡(jiǎn)單的C# WPF應(yīng)用程序,這個(gè)應(yīng)用程序?qū)?huì)實(shí)現(xiàn)加載、顯示、保存圖像的功能。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在ImageGear for .NET中,一旦基礎(chǔ)的應(yīng)用程序完成之后,你就可以使用下面的步驟對(duì)它添加PDF功能支持。
1、首先需要對(duì)ImageGear for .NET PDF Assembly添加一個(gè)引用。
2、下面使用語(yǔ)句添加PDF。
using ImageGear.Formats.PDF;
3、在 Form1 構(gòu)造函數(shù)中調(diào)用InitializeComponent()之前添加下面的語(yǔ)句。
ImGearFileFormats.Filters.Insert(0, ImGearPDF.CreatePDFFormat()); ImGearFileFormats.Filters.Insert(0, ImGearPDF.CreatePSFormat()); ImGearPDF.Initialize();
PDF 和 PS 格式到 ImageGear 格式列表中,同時(shí)也會(huì)初始化PDF引擎。ImGearPDF.Initialize()在每個(gè)進(jìn)程中都必須被調(diào)用,除非使用的是多線程處理。現(xiàn)在添加一個(gè)調(diào)用來(lái)終止的PDF引擎。
4、終止的PDF引擎最好的地方是FormClosed()事件處理程序,在Form1屬性窗口中使用Events選項(xiàng)添加,并粘貼下面的代碼:
ImGearPDF.Terminate();
這個(gè)將會(huì)終止PDF引擎,每個(gè)ImGearPDF.Initialize()都需要有一個(gè)綁定的ImGearPDF.Terminate()調(diào)用。
5、下一步是打開(kāi)項(xiàng)目屬性,并改變輸出路徑“... \ ImageGear NET V21 \ BIN ”。也可以一個(gè)目錄,包含ImageGear binaries 以及PDF源,作為對(duì)ImGearPDF.CreatePDFFormat、ImGearPDF.CreatePSFormat以及ImGearPDF.Initialize 方法的參數(shù)。
6、現(xiàn)在,將下面的代碼添加到主窗體類,來(lái)處理PDF頁(yè)面對(duì)象:
void DisposePDFObjects() { if (imGearPage != null && imGearPage is ImGearPDFPage) { imGearPageView1.Display = null; ((ImGearPDFPage)imGearPage).Dispose(); } }
7、在終止PDF引擎前,添加一個(gè)調(diào)用DisposePDFObjects()到Form1_FormClosed事件處理應(yīng)用程序上。
8、刪除所有,“!imGearPageDisplay.Page.DIB.IsEmpty()”以及“!imGearPage.DIB.IsEmpty()”會(huì)從所有的菜單處理程序中檢查,這個(gè)主要是因?yàn)镻DF頁(yè)面總是有一個(gè)空的DIB字段。這些檢查將出現(xiàn)6次,禁用它們。
9、在loadPageToolStripMenuItem_Click中,在ImGearFileFormats.LoadPage調(diào)用之前添加一個(gè)調(diào)用到DisposePDFObjects(),這個(gè)需要清理非托管的PDF頁(yè)面資源。
10、現(xiàn)在可以進(jìn)行編譯和運(yùn)行支持PDF頁(yè)面的完成了的應(yīng)用程序了,如果你想處理PDF文檔,需要做下面的一些添加和修改:
在Form1類中添加以下字段:
private ImGearDocument imGearDocument = null;
在loadPageToolStripMenuItem_Click找到下面的代碼:
// Load the image into the page imGearPage = ImGearFileFormats.LoadPage(stream, 0);
并將其替換為:
imGearDocument = ImGearFileFormats.LoadDocument(stream, 0, 1); imGearPage = imGearDocument.Pages[0];
注:使用ImGearDocument API也可以做一樣的事情。
需要注意的是必須處理ImGearPDFDocument,就像ImGearPDFPage。要做這個(gè),需要用下面的內(nèi)容替換DisposePDFObjects()方法的實(shí)現(xiàn)。
void DisposePDFObjects() { if (imGearDocument != null && imGearDocument is ImGearPDFDocument) { imGearPageView1.Display = null; ((ImGearPDFDocument) imGearDocument).Dispose(); } }
11、現(xiàn)在就可以編譯和運(yùn)行已經(jīng)完成的并帶有PDF文檔的應(yīng)用程序了。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件