2009-08-03 129 views
11

我正在處理的一個項目需要我生成以HTML(.aspx)和PDF格式輸出的報告。有沒有可用的解決方案,可以將.aspx頁面的輸出提供給PDF生成實用程序?完全支持HTML和CSS將是理想之選。將.aspx直接轉換爲.pdf

謝謝!

+1

感謝您的答案!我應該澄清一件事... Web應用程序使用Web表單和SSL證書進行保護。希望這不會是一個問題。從我正在閱讀的ABCpdf和wkhtmltopdf看起來是最好的選擇。 ABCpdf似乎更好地與.NET集成,但是由於使用WebKit渲染引擎,wkhtmltopdf可能在渲染複雜CSS方面做得更好。 CSS可能是半複雜的,將來可能會添加圖像(圖表等)。謝謝! – JCdowney 2009-08-03 03:00:31

回答

12

wkhtmltopdf將做到這一點....用途:

wkhtmltopdf http://www.google.com google.pdf 

就是這樣。你可以去任何網頁...甚至aspx。因爲它使用webkit html渲染引擎(Safari,Chrome),所以css比任何其他實用程序都支持得更好。享受

有一個單獨的.exe(7 MB),可以從.Net使用,只需使用Process.Start 確保您將exe複製到您的項目目錄中,或者您必須指定完整路徑。 例如:

static void HtmlToPdf(string website,string destinationFile) 
    { 
     ProcessStartInfo startInfo = new ProcessStartInfo(); 
     startInfo.FileName = "wkhtmltopdf.exe"; 
     startInfo.Arguments = website+" "+destinationFile; 
     Process.Start(startInfo); 
    } 

我認爲SSL支持,但我不認爲2路SSL將在時刻工作。它是我所見過的最好的一站式HTML - > PDF工具。

+0

這聽起來不錯。 – 2009-08-03 09:09:03

+0

工程非常好,即使我的網站託管(網絡應用程序生成pdf發票) – Marek 2010-01-20 08:01:44

+0

我發現它打破了一些頁面 - 檢查這一個例如:http://jsfiddle.net/BgNPC/8/ – 2011-12-01 21:24:41

0

AspPDF是一個用於動態創建,讀取和修改可移植文檔格式(PDF)文件的ActiveX服務器組件。

http://www.asppdf.com

3

我以前使用HTMLDoc它在將HTML表格,圖像等轉換爲體面的PDF報告方面做得很好。好像還有一個open source version

iTextSharp在基本級別呈現html。

我發現在一個簡單的HTML渲染器中進行黑客攻擊可以讓我立即提供PDF功能,然後我不得不在晚些時候對PDF報告渲染器進行備份。如果您將表示層與數據和業務邏輯分開,這應該非常簡單。

我使用PDFlib然後iTextSharpPDFlib都是很棒的庫,用於從您的數據源以編程方式創建PDF。

我還沒有看到一個完美的HTML 2 PDF渲染器,所以我會計劃一個兩階段的方法。您可能還想看看其他選項this question

0

ActivePDF WebGrabber是一款優秀的產品,只要您擁有正確的配置。這是昂貴的,但它有HTML和CSS的強大支持。

0

我們已將此產品用於Alt-Soft XML2PDF產品。它可以使用XSL-FO markup language將任何XML文件轉換爲PDF。

因此,如果您的ASPX頁面與XHTML兼容,Xml2PDF會將這些頁面轉換爲相當快樂和輕鬆的PDF。下面是一個示例頁面 - 包含一個可下載的ASP.NET示例 - 顯示其工作原理:http://www.alt-soft.com/products_HTML2PDF.aspx

這不是免費的,但非常值得它的許可證價格!

馬克

0

這是一個ASPX頁面轉換成PDF最佳的控制:

http://www.essentialobjects.com/Products/EOPdf/ASPXToPDF.aspx

這是一個ASP.NET服務器控件,您可以將其放入頁面中。它會自動處理ASP.NET身份驗證和會話。因此,即使頁面請求登錄並使用會話數據,您也可以轉換當前頁面。