原創(chuàng)|其它|編輯:郝浩|2012-10-18 15:05:16.000|閱讀 1934 次
概述:大多數(shù)時(shí)候,都是使用WebBrowser空間,將網(wǎng)頁(yè)截圖,然后插入PDF文件,另外也可以將網(wǎng)頁(yè)先保存為Word文件,然后再?gòu)腤ord轉(zhuǎn)PDF。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
中轉(zhuǎn)方式:
大多數(shù)時(shí)候,都是使用WebBrowser空間,將網(wǎng)頁(yè)截圖,然后插入PDF文件,另外也可以將網(wǎng)頁(yè)先保存為Word文件,然后再?gòu)腤ord轉(zhuǎn)PDF。
PDF虛擬打印機(jī):
還有一種方式,就是使用虛擬打印機(jī),安裝一個(gè)PDF虛擬打印機(jī),將它設(shè)置成默認(rèn)打印機(jī),比如PDF-XChange,將它打印到文件,打印的效果很好,但沒(méi)法代碼控制,始終會(huì)彈出一個(gè)打印對(duì)話框。
HTML2PDF:
另外,還可以使用HTML2PDF-X Pilot,下面是介紹:
HTML2PDF-X Pilot is a library that helps you easily create PDF reports with the help of HTML and perform HTML to PDF conversion. You can integrate the library into your application or you may use it as a standalone product.
下載地址:
使用很簡(jiǎn)單,只需要給一個(gè)URL,下面是實(shí)例代碼:
VB
' Create HTML2PDF instance: Set html2pdf_obj = CreateObject("html2pdfx.HTML2PDFX") ' Initiate engine: html2pdf_obj.StartHTMLEngine "demo", "demo" ' Set PDF filename: html2pdf_obj.OutputFileName = "URL_to_PDF.pdf" ' Set page margins: html2pdf_obj.MarginLeft = 10 html2pdf_obj.MarginRight = 10 html2pdf_obj.MarginTop = 50 html2pdf_obj.MarginBottom = 50 html2pdf_obj.SetCustomPaperSize 420,594 ' After PageTimeout (in sec) loading will stop and conversion will proceed ' with loaded content: html2pdf_obj.PageTimeout = 40 ' Start PDF generation: html2pdf_obj.BeginDoc ' Define base URL for resolving relative links: html2pdf_obj.BaseURL = "//www.baidu.com" ' Load URL: html2pdf_obj.LoadURL "//www.baidu.com" ' Perform conversion: html2pdf_obj.ConvertAll ' Finish PDF generation: html2pdf_obj.EndDoc Set html2pdf_obj = nothing
也可以添加引用到ASP.NET項(xiàng)目中使用。
使用該軟件,需要購(gòu)買(mǎi)授權(quán),否則生成的PDF文件會(huì)有一個(gè)版權(quán)說(shuō)明:
ABCpdf.NET是一個(gè)能夠很方便生成pdf的.net組件,能夠運(yùn)行在以下操作系統(tǒng)中:Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008.官方建議運(yùn)行環(huán)境安裝IE6或者以上版本。對(duì)應(yīng)不同的系統(tǒng),它有32位和64位的版本,使用時(shí)注意版本的選用。
ABCpdf的功能比較多,比如可以讀word、excel等文件,可以保存pdf、xps、swf等格式文件。本文主要介紹其生成pdf的方法。使用時(shí),需要ABCpdf.DLL和ABCpdfCE7.DLL支持。其中ABCpdf.DLL(.net調(diào)用接口)需要引用到項(xiàng)目中,ABCpdfCE7.DLL(核心驅(qū)動(dòng))放在ABCpdf.DLL的同一目錄下即可。
在使用的時(shí)候,需要注冊(cè),注冊(cè)后,需要重啟計(jì)算機(jī)。
下面是一段ASP.NET實(shí)例代碼:
[csharp]
Doc theDoc = new Doc(); //創(chuàng)建一個(gè)Doc對(duì)象 theDoc.Rect.Inset(24, 48); //Rect默認(rèn)是文檔整個(gè)頁(yè)面大小, 這里的Inset表示將Rect左右留出24的空白,上下留出48的空白 int theID = theDoc.AddImageUrl("具體的網(wǎng)頁(yè)地址"); while (true) { if (!theDoc.Chainable(theID)) break; theDoc.Page = theDoc.AddPage(); theID = theDoc.AddImageToChain(theID); } theDoc.Save(Server.MapPath("1.pdf"));
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:Bluedoctor的專欄——CSDN