“Is there any way to view PDF files in aWinforms tool?” 這個是我在技術論壇上發現的一個老外求助的帖子,然后看到別人回復的帖子中建議了一個免費的Spire.PDFViewer組件,一看是免費的心里不由地對它有點感興趣想想正好閑來沒事做不如先測試一下這個組件,說不定以后能用到。就這樣我訪問了它的超鏈接(
https://visualstudiogallery.msdn.microsoft.com/708d5967-be8a-4c90-9a1f-c0dd4df30f93)下載了它然后安裝到我的電腦上,測試之后說實話這個組件確實不錯,它有兩個控件:PDFDocumentViewer, PDFViewer,使用起來很方便就像拖按鈕一樣,直接拖到Form上就好,除了viewpdf文件的功能外,它還有打印,保存文件,轉換圖片,縮放頁面等功能。
下面就分享一下我對這個組件的測試過程:
1、安裝這個組件后,在安裝的路徑上會生成一個叫Bin的文件夾,這個文件夾里包含的就是這個組件,它分別有NET 2.0, .NET 3.5, .NET 4.0對應的.dll文件, 由于我創建的項目的TargetFramework 是.NET 4.0的,所以我就引用了.NET4.0文件夾里包含的所有的.dll文件。
![](/mis/uploader/read.ashx?c=202212222023564de19155a4129762&sort=open&uploadlog_code=c5500d9d7f11feca)
![](https://img-blog.csdn.net/20150420161152427?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
現在已經把它的.dll文件成功地添加到項目:
![](/mis/uploader/read.ashx?c=20221222202415a99840dac2189e22&sort=open&uploadlog_code=c8ce7d4a708213b0)
![](https://img-blog.csdn.net/20150420161251816?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
2、接下來是把PDFDocumentViewer控件,PDFViewer控件添加到工具箱里。
![](/mis/uploader/read.ashx?c=202212222024399a3d6ea2edddcbd2&sort=open&uploadlog_code=106baecce9fd6f3a)
![](/mis/uploader/read.ashx?c=20221222202502bd2c787090b9077e&sort=open&uploadlog_code=c94da287dbf7f10c)
![](https://img-blog.csdn.net/20150420161331019?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20150420161327830?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
現在這兩個控件已經成功的添加到工具箱:
![](/mis/uploader/read.ashx?c=20221222202521a928a4ec179008d8&sort=open&uploadlog_code=f793d0bb9617ca40)
![](https://img-blog.csdn.net/20150420161516148?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
3、我先測試的是PDFViewer控件,它的最上端是個工具欄,里面包含打開pdf文件,保存pdf文件,打印,遍歷頁數,放大,縮小,調整縮放比例,使頁面適應窗體的大小(FitToPage),使頁面的寬度適應窗體的寬度(FitToWidth)。
![](/mis/uploader/read.ashx?c=20221222202542b26886936405eb6c&sort=open&uploadlog_code=4d5b799a029d78fa)
![](https://img-blog.csdn.net/20150420161545008?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
把PDFviewer控件拖到from上,然后設置它的Dock屬性為Fill,這樣能讓它填充整個form窗體。
![](/mis/uploader/read.ashx?c=2022122220260729e4c859437f850&sort=open&uploadlog_code=766df5f5cc8f5fb8)
![](https://img-blog.csdn.net/20150420161452694?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
打開一個pdf文件:
![](/mis/uploader/read.ashx?c=202212222026301d9aa1df96f6607b&sort=open&uploadlog_code=dcbca389bf7c7e7)
![](https://img-blog.csdn.net/20150420161718109)
4、我重新建了個項目來測試PDFDocumentViewer,拖這個控件到Form上,這個控件只有view pdf文件的功能,所以需要寫行代碼來讓它加載指定的文檔。
![](https://img-blog.csdn.net/20150420161834876?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](/mis/uploader/read.ashx?c=20221222202655517acd3e57ed724c&sort=open&uploadlog_code=7f0637a75d40c093)
- private void Form1_Load(objectsender, EventArgs e)
- {
-
- this.pdfDocumentViewer1.LoadfromFile("C:\\result.pdf");
- }
啟動項目,現在這個pdf文檔的內容展現在這個控件里了。
![](/mis/uploader/read.ashx?c=202212222027141b91693bb6b319cc&sort=open&uploadlog_code=8ae9bb1bf0aea138)
![](https://img-blog.csdn.net/20150420161833622?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRWljZWJsdWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
該文章在 2022/12/22 20:27:50 編輯過