久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

html轉換為pdf案例的一些總結(多圖推薦)

這篇文章主要介紹了關于html轉換為pdf的案例,wkhtmltopdf測試 PhantomJS測試 IText和Flying Sauser等一些知識點都做了詳細說明,具體操作步驟大家可查看下文的詳細講解,感興趣的小伙伴們可以

由于工作所需,最近花時間研究了html轉換為pdf的功能。html轉換為pdf的關鍵技術是如何處理網頁中復雜的css樣式,通過在網上收集資料,發現目前html 轉換為pdf的解決方案主要分為三類:

客戶端模式:前后臺調用客戶端程序,利用客戶端程序的功能完成pdf文件轉換。本次測試工具有:wkhtmltopdf和PhantomJS。java jar包解析類模式:java代碼解析css樣式,翻譯html文件為pdf文件。本次測試類有:IText,Flying Sauser,PD4ML。js 前端解析模式:js前端解析html文件為pdf文件,本次測試案例有:html2canvas。

本次針對網上介紹的方案,結合實際項目的需求,做一一測試,在性能和功能方面做如下分析。

1.測試頁面介紹

通過查看各個轉換案例在網上的介紹,簡單的html樣式,一般的表格樣式在做pdf文件轉換時,以上的方案均支持。但考慮到實際業務的需要,本次測試特意用到了bootstrap (v 3.3.6)的css樣式,同時頁面也應用了css3的新特性。基于這樣的新特性編寫一個靜態的html頁面,html頁面在瀏覽器中的展示效果如下:

html轉換為pdf案例的一些總結(多圖推薦)

2.wkhtmltopdf測試

wkhtmltopdf是一個使用webkit網頁渲染引擎開發的用來將html轉成 pdf的工具,可以跟多種腳本語言進行集成來轉換文檔。官網地址http://wkhtmltopdf.org/

技術特點:Wkhtmltopdf可以直接把瀏覽器中瀏覽的網頁轉換成一個pdf,他是一個把html頁面轉換成pdf的軟件(需要安裝在服務器上)。使用時可通過java代碼調用cmd指令完成網頁轉換為pdf的功能。

功能測試:直接在cmd里輸入測試指令,可查看處理進度。

html轉換為pdf案例的一些總結(多圖推薦)

第一個參數:wkhtmltopdf.exe所在的路徑

第二個參數:需要轉換為pdf的html頁面

第三個參數:pdf文件路徑及文件名

頁面導出效果如下:

html轉換為pdf案例的一些總結(多圖推薦)

測試說明:

通過測試發現,wkhtmltopdf對bootstap的CSS樣式整體支持較好。對css3的新特性如圓形圖片樣式支持行不好。部分頁面樣式會失效。對于圖表展示,eachart圖表導出程序會報錯,不支持。不過echart有圖表轉換為圖片的接口,可通過獲取圖片地址的方式導出到pdf中。

3.PhantomJS測試

PhantomJS是一個基于webkit內核的無頭瀏覽器,即沒有UI界面,即它是一個瀏覽器,只是其內的點擊、翻頁等人為相關操作需要程序設計實現。它提供javaScript API接口,即通過編寫JS程序可以直接與webkit內核交互,在此之上可以結合java語言等,通過java調用js等相關操作,從而解決了以前c/c++才能比較好的基于webkit開發優質采集器的限制。它同時提供windows、linux、mac等不同os的安裝使用包,也就是說可以在不同平臺上二次開發采集項目或是自動項目測試等工作。官網地址http://phantomjs.org/

PhantomJS可做網頁分析,功能很多,本次僅調用網頁的截圖功能。在cmd中的測試如下:

html轉換為pdf案例的一些總結(多圖推薦)

測試頁面導出效果如下:

html轉換為pdf案例的一些總結(多圖推薦)

測試說明:

通過測試發現,PhantomJS對bootstap的樣式支持較好。對css3的新特性如圓形圖片樣式支持行不好。部分頁面樣式會失效。對于echart圖表展示,也可直接導出。效果如下:

html轉換為pdf案例的一些總結(多圖推薦)

3.IText和Flying Sauser

IText實現html2pdf,速度快,糾錯能力差,支持中文(要求HTML使用unicode編碼),但中支持一種中文字體,開源。Flying Sauser實現html2pdf,糾錯能力差,支持多種中文字體(部分樣式不能識別),開源。

技術特點:基于java編程將html的css樣式做解析處理,目前僅對較簡單的頁面和樣式支持。對于css3的樣式和關聯復雜的css樣式兼容性極差。當頁面內容較長時,處理時間慢。參考地址:https://code.google.com/archive/p/flying-saucer/

測試結果:本實驗的測試頁面無法出來,普通的測試頁面效果如下:

html轉換為pdf案例的一些總結(多圖推薦)

測試說明:

通過測試發現,IText和Flying Sauser這兩個開源項目對css3的兼容性基本不行,通過查閱資料,發現這種技術比較陳舊,這個開源項目現在也沒有更新和維護了。對于簡單表格,統計數據的導出,更新的技術有bootstrap table,easyui datagrid表格導出。網上介紹的這種方案不建議使用。

4.PD4ML測試

PD4ML是純Java的類庫,使用HTML、CSS作為頁面布局和內容定義格式來生成PDF文檔的強大工具,可以簡化最終用戶生成PDF的工作。參考網站:http://www.pd4ml.com

該軟件的優點是:

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章給大家詳細介紹了HTML頁面跳轉及參數傳遞問題,需要的朋友參考下吧
本文給大家分享一段代碼關于雙11搶券,寫一個自動打開頁面的html,僅僅是設定時間打開搶券的頁面,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
本文通過實例代碼給大家介紹了HTML 表單組件的知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
最近公司安排我做一個ccfa的小東東,其中有一項需求就是做一個網頁播放攝像頭的實時監控功能,對于我這個小菜鳥來說真是難到了,下面小編給大家帶來了HTML實現海康攝像頭實時監控
html頁面的查找功能主要是實現在查找框內輸入字符,下面通過本文給大家分享html頁面的查找功能,需要的朋友參考下吧
這篇文章主要介紹了HTML頁面自動清理js、css文件的緩存(自動添加版本號),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: 国产一区电影 | 麻豆精品国产免费 | 精品视频久久久 | 黄色片免费在线观看 | 视频一区二区在线观看 | 国产精品福利在线观看 | 国产激情91久久精品导航 | 亚洲国产精品99久久久久久久久 | 日韩欧美国产一区二区三区 | 亚洲精品一二三区 | 亚洲精品黄色 | 亚洲自拍偷拍视频 | 99精品国产一区二区青青牛奶 | 国产精品久久久久久久久久久免费看 | 久久免费国产 | 一区二区三区视频在线 | 国产精品国产a级 | 免费黄色片在线观看 | 国产精品国产三级国产aⅴ原创 | 日韩精品一区二区三区在线播放 | 亚洲91精品| 夜夜摸夜夜操 | 亚洲精品成人 | 国产91精品久久久久久久网曝门 | 欧美一区二区三区的 | 成人福利电影 | 国产一级黄色网 | 久久高潮 | 国产欧美久久一区二区三区 | 荷兰欧美一级毛片 | 欧美亚洲国产日韩 | 久久久免费电影 | 国产精品成人品 | 黑人精品 | 成人日韩av | 91免费电影 | 99国产精品一区二区三区 | 中文字幕一区在线观看视频 | 男女免费在线观看视频 | 欧美爱爱视频网站 | 无码日韩精品一区二区免费 |