怎麼用PHP在HTML中產生PDF檔案

來源:互聯網
上載者:User
原文:Generate PDF from html using PHP

譯文:使用PHP在html中產生PDF

譯者:dwqs

利用PHP編碼產生PDF檔案是一個非常耗時的工作。在早期,開發人員使用PHP並藉助FPDF來產生PDF檔案。但是如今,已經有很多函數庫可以使用了,並且能夠從你提供的HTML檔案產生PDF文檔。這讓原先耗時的工作變得非常簡單了。

FPDF是很早就被使用的,其特點如下:

FPDF

FPDF是一個允許使用純PHP產生PDF文檔的PHP類,換句話說,沒有使用PDFlib 函數庫。FPDF中的F代表免費和自由:你可以在任何情況下使用,並且支援自訂,來滿足你特定的需求

特點:

1、可以選擇單元、頁面格式和邊距

2、可以管理頁首和頁尾

3、自動分頁

4、自動換行和文本對齊

5、支援圖片(JPEG,PNG,gif)

6、色彩豐富,支援連結

順便也介紹一些可以直接從HTML產生PDF的函數庫。

DomPDF

domPDF將HTML轉換為PDF。DomPDF遵循CSS2.1的HTML布局,它是用PHP編寫的渲染引擎。DomPDF以樣式為主導:它會下載並讀取外鏈樣式表,內聯樣式和HTML元素的style屬性值。並且還支援大部分的HTML可見屬性。

特點:

1、處理大部分CSS2.1和少許CSS3屬性,包括@import, @media & @page 規則

2、支援大部分HTML 4.1的可見屬性

3、支援外部樣式表,包括本地或者http/ftp連結的(通過fopen-wrappers)

4、支援複雜的表結構,包括行和列的span,separate & collapsed border models和獨立的cell樣式

5、支援圖片(gif, png, bmp & jpeg)

6、不依賴於其他的PDF函數庫

TCPDF

TCPDF也可以用於產生PDF文檔,並且它是一個開源的PHP類庫。

TCPDF項目開始於2002年,現在已經被成千上萬的人自由使用。TCPDF is a Free Libre Open Source Software (FLOSS).

特點:

1、準系統不依賴於其他PDF函數庫

2、標準頁面格式、支援頁面格式自訂、邊距自訂和單元計量

3、支援UTF-8編碼和文字方向從右至左的語言。

4、支援TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0等字型

5、支援字型子集設定,並提供方法發布一些XHTML + CSS code, Javascript and Forms

6、支援圖片和圖形的轉換

7、支援頁面壓縮(需要php-zlib擴充)

8、自動管理頁首和頁尾

更多特點請戳:more

從原文的評論列表中,我也搜羅了相關的網站和開源項目:

wkhtmltopdf(評論說是HTML產生PDF的標準了):https://code.google.com/p/wkhtmltopdf/

https://github.com/mreiferson/php-wkhtmltox

pdfservices(這個你解釋了,戳開就知道):http://www.pdfservices.net/

下一篇:PHP中我經常容易混淆的三組函數
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.