我一直在使用htmldoc,但我遇到了一些相當嚴重的限制。我需要最終解決方案在Linux機器上工作。我將從Perl應用程序調用這個庫/實用程序/應用程序,所以任何Perl接口都將是一個獎勵。如何自動執行HTML到PDF的轉換?
回答
PrinceXML是我見過的最好的一個(它解析常規的HTML以及XML/XHTML)。它是如何最好的? Well, it passes the acid2 test我認爲是相當不錯的令人印象深刻的
然而,相當昂貴
這將是總矯枉過正,但你可以下載和安裝mirth。它是一個消息路由引擎,但它可以將html轉換爲pdf,因此您可以將其設置爲在文件夾中選擇一個html文件,將其轉換爲pdf,然後將pdf放在相同或其他文件夾中。就像我說的那樣,矯枉過正,有點學習曲線,但它是免費的,而且如果你喜歡,你可以在linux上運行它。而你所有的perl應用程序將不得不做的是將html放到一個文件中。
我爲你做了一些Google搜索,並提出了兩個選擇。可能還有更多,我的谷歌策略是嘗試「webkit命令行pdf」和「gecko命令行pdf」,基本上尋找命令行程序,將兩種流行的開源渲染引擎嵌入到命令行渲染器中。這裏是我的發現:
Firefox command-line printer - 輸出爲PDF和PNG
wkpdf - 而這是Mac,它可能是相當便攜。
對不起發掘這個老帖子,但它在我的尋找最好的HTML/PDF轉換工具第一次出現。 在Linux wkhtmltopdf是非常好的(考慮到CSS等)和GPL。
爲了支持你的觀點,1)像魅力一樣工作2)使用webkit渲染引擎和qt,這意味着它可以從更新中受益。雖然最後的RC於2011年2月發佈。 – kommradHomer 2013-04-11 13:16:52
您可能想要查看Peernet的「文檔轉換服務」(位於http://www.peernet.com/conversion-software/batch-document-converter/)。這作爲Windows桌面或Windows Server計算機上的服務運行。它在Web瀏覽器中打開HTML文檔,然後通過打印驅動程序打印它們以創建PDF文檔,以便生成的PDF文檔看起來與您從瀏覽器打印HTML文檔完全一樣。
轉換可以通過一個小的腳本rasterize.js來完成,然後發出
phantomjs rasterize.js 'http://en.wikipedia.org/w/index.php?title=Jakarta&printable=yes' jakarta.pdf
WeasyPrint產生具有可選擇的文本和超鏈接不錯的PDF文件。
weasyprint input.html output.pdf
如果使用wkhtmltopdf
代替,請嘗試以下方法:
wkhtmltopdf --margin-bottom 20mm --margin-top 20mm --minimum-font-size 16 ...
有,因爲Chrome瀏覽器59.一個新的無頭模式作爲所有其他解決方案確實有新的(或不那麼新的奮鬥了)像flexbox這樣的CSS功能,這在我的情況下是唯一的解決方案來生成一個合適的PDF輸出。
要從本地html文件創建PDF,只需使用以下命令: chrome --headless --disable-gpu --print-to-pdf file:///path/to/myfile.html
。
對於Mac OS替代chrome
與/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
。
我注意到的唯一缺點是(目前)你不能通過stdin傳遞html,但是創建臨時文件並不是什麼大問題。
欲瞭解更多信息,請參閱https://developers.google.com/web/updates/2017/04/headless-chrome#create_a_pdf_dom
更新:事實證明,鍍鉻的傢伙將最有可能提供某種節點模塊的完成這個任務,這將最終棄用無頭模式(https://bugs.chromium.org/p/chromium/issues/detail?id=719921)。
最好的辦法是使用基於節點的方法,使用https://developers.google.com/web/updates/2017/04/headless-chrome#node中記錄的木偶 模塊,並通過Page.printToPDF命令打印頁面,該命令還啓用了一些額外的配置。
當然,您也可以從節點(即PHP腳本)以外的任何其他環境連接到調試控制檯websocket。
- 1. 如何自動將PDF轉換爲HTML?
- 2. 轉換HTML到PDF
- 3. PDF到HTML轉換
- 4. PDF到HTML轉換
- 5. Html轉換爲PDF的PDF轉換
- 6. 使用Aspose進行HTML到PDF轉換
- 7. 如何將html轉換爲pdf與PDF?
- 8. Html到PDF轉換器
- 9. 轉換HTML到PDF在asp.net
- 10. HTML到PDF轉換iPhoneSDK
- 11. 如何轉換HTML到PDF並打開PDF文件,使用Java與YaHP Html到Pdf轉換器
- 12. 執行iTextSharp將HTML轉換爲PDF的難題
- 13. ios中的HTML到PDF轉換
- 14. iOS上的HTML到PDF轉換?
- 15. pdf到服務器上的HTML轉換?
- 16. PDF到HTML的轉換在PHP
- 17. HTML到PDF轉換的規範?
- 18. 如何將html錶轉換爲pdf?
- 19. 如何將HTML轉換爲PDF
- 20. 如何將HTML轉換爲PDF文檔
- 21. 如何CSS和HTML轉換爲PDF
- 22. 如何將PDF轉換爲HTML?
- 23. 如何將html內容轉換爲pdf?
- 24. Android - 如何將html轉換爲pdf?
- 25. HTML自動換行
- 26. 如何將html頁面的動態內容轉換爲pdf
- 27. 如何將動態html轉換爲java中的pdf
- 28. 將動態HTML轉換爲PDF
- 29. 如何編寫shell腳本以自動執行文件轉換?
- 30. PDF到HTML轉換爲網站
我有這個相同的問題。我最近評估了Prince XML,可以證明它是一款非常棒的應用程序。輸出的速度和質量簡直令人難以置信。 – cletus 2009-01-13 01:41:39
爲什麼還要通過Acid 2測試的免費開源軟件支付數千美元? http://weasyprint.readthedocs.io WeasyPrint強烈推薦。現象結果。 – FlorianB 2016-07-09 22:51:34