![](/img/trans.png)
[英]html tags not converting when html to pdf convert using itextSharp
[英]Alternatives to iTextSharp for Converting HTML to PDF
我想使用iTextSharp將HTML文件轉換為PDF。
我用了這段代碼 。
然后,我執行以下操作將其轉換為pdf:
HTMLWorker htmlWorker = new HTMLWorker(document);
htmlWorker.Parse(new StringReader(results));
document.Close();
但是,沒有CSS被解析。 有其他選擇嗎?
18個月前,我們對大多數可用的html-to-pdf轉換器(收費和免費)進行了詳盡的測試。 最后, 最實用的 html-to-pdf轉換器是一個名為wkhtmltopdf的免費開源程序。
它是命令行驅動的,使用webkit渲染引擎,並且可以准確(更重要的是,始終如一)將網頁轉換為漂亮的pdf。 它還具有各種有用的命令行開關,可為您提供完整的頁眉/頁腳控制,還可以選擇創建目錄表頁面,並且運行非常非常快。 AND-因為它是命令行驅動的,所以它具有易於用於批處理生成的額外好處。 您根本不會出錯。
作為附帶說明,該程序還有一個名為wkhtmltoimage的姊妹程序(下載時捆綁在一起),其工作原理完全相同,但是將網頁轉換為多種圖像格式。 這也非常有用,我們在構建求職建議時使用此功能為基於Web的工具制作快照。
我知道我聽起來像是一個狂熱的粉絲,但事實並非如此。 我只是一個對所有的bulsh * t轉換器都感到厭煩的人,當我們找到wkhtmltopdf時,我被雙重震撼了。 我根本不能推薦這個小程序。
它不會自動加載。 您需要按照以下說明手動進行操作。
StyleSheet ss = new StyleSheet();
ss.LoadStyle("body", "leading", "16,0");
ss.LoadStyle("p", "style", "font-family:Times New Roman");
然后你用
List<IElement> htmlToPDF = HTMLWorker.ParseToList(new StringReader("<font face=\"Times\">" + html + "</font>"), style);
foreach (IElement element in htmlToPDF ) {
document.Add(element);
}
但是,只有部分樣式可以在itextsharp中使用,而並非全部。
實際上,您應該嘗試使用XMLWorker ,它是itextsharp的插件。 它剛剛在本月發布。 它比僅使用itextsharp可以更好地處理html。
我認為wkhtmltopdf項目看起來也不錯,但是我不知道它是否可以在我們的生產環境中正常工作,因為Web應用程序是多線程程序。
最好不要遲到,但是這是如何做的一個很好的例子,還說明了可行和不可行的方法: http : //www.thiscouldbeuseful.com/2012/04/itextsharp-to-rescue-converting-html- to.html 。
我更喜歡iTextSharp,因為imo提供最多的功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.