2012-11-05 172 views
2

可能重複:
Convert HTML + CSS to PDF with PHP?從當前的HTML頁面創建PDF

我在一個基本的Apache沒有擴展名的除了默認啓用的,我想創建從PDF文件當前頁面。

當前頁面是PHP回顯了一些變量,但我想從HTML和當前顯示在頁面上的文本創建一個PDF文檔。

有點像WHMCS報價系統。

+0

我想避免使用擴展,但作爲最後的手段,我將啓用一些擴展。 –

+0

使用PHP庫for PDFcreation like http://www.pdflib.com/ – jtheman

+0

您可能必須使用[** wkhtmltopdf **](http://code.google.com/p/wkhtmltopdf/)這個。它使用webkit的CSS東西,並支持很多選項,但它有點涉及到安裝在服務器上。 – adeneo

回答

1

看看FPDF

這是一個在php中生成.pdf文件的免費庫。

+1

FPDF很棒,但它不會將HTML轉換爲PDF。 – GolezTrol

+0

我有一個預定義的引用,它是使用HTML和CSS爲樣式設置的。使用PHP從MYSQL數據庫中提取信息,我需要從確切的佈局創建PDF文件 –

+0

@DarylGill您沒有太多選擇。 PHP不包含HTML呈現器。用樣式渲染HTML是非常複雜的,渲染器是高度專業化的代碼片段。但是,某些渲染器可能會在某種程度上呈現HTML,但我不確定結果。它不具備完整網頁瀏覽器的功能。 – GolezTrol

1

調查FPDFTCPDF,DomPDF或任何其他PHP PDF庫。

FPDF非常輕便,如果您只是回顯變量,對您而言可能非常適合。

TCPDF在syles和css特性方面更多地是HTML-> PDF,但文件大小有點大。它可以用來輕鬆構建發票並使其看起來不錯。

我沒有親自使用過DomPDF,所以我不會評論它,但它可以完成工作。

0

您還可以檢查dompdf。它從HTML創建PDF!它可能更適合您的請求,但我個人更喜歡FPDF(CSS讓我有時會用domdf瘋狂:-))

0

我測試的唯一純PHP解決方案是mPDF,它對我的​​目的非常有效。它從HTML/CSS輸入生成PDF。

它需要大量內存,因此您必須增加腳本的內存限制。爲我工作的設置爲:

ini_set('memory_limit', '1024M'); 
ini_set('pcre.backtrack_limit', 2000000); 
+1

大量的內存將需要所有pdf庫(tcpdf,mpdf等)。所以如果在項目中需要最多5頁的簡單發票,它將很好用,但如果需要生成大的PDF文件,那麼最好使用服務器端生成,例如wkhtmltopdf – DTukans