嗨有沒有人知道我可以通過PHP創建一個格式良好的PDF發票?PHP創建PDF發票
理想情況下,我正在尋找的東西有一個標題,然後列出一些產品與周圍某種表。經過一段快速的Google之後,我會對生成PDF格式感到滿意,但嘗試並很好地設計它的樣式完全是另一回事。
感謝
嗨有沒有人知道我可以通過PHP創建一個格式良好的PDF發票?PHP創建PDF發票
理想情況下,我正在尋找的東西有一個標題,然後列出一些產品與周圍某種表。經過一段快速的Google之後,我會對生成PDF格式感到滿意,但嘗試並很好地設計它的樣式完全是另一回事。
感謝
我使用TCPDF(見http://www.tcpdf.org/)本:它很能幹,不會太痛苦得到建立。我會說,根據您的數據源,您可能會遇到一些問題。在我的情況,我的數據是從SOAP接口外包給我的會計系統,並使用笨我的應用程序,我可以做到這一點:
$address = $extraclient->get_company_address();
// generate the PDF invoice
$this->load->library('pdfinvoice');
// set document information
$this->pdfinvoice->SetSubject("Invoice " . $data_invoice['code_invoice']);
// add a page
$this->pdfinvoice->AddPage();
$this->pdfinvoice->StartPageOffset();
// write the client's details out
$width = $this->pdfinvoice->GetPageWidth()/2;
$margins = $this->pdfinvoice->getMargins();
$this->pdfinvoice->SetFont('times', 'b', $this->pdfinvoice->bigFont);
$this->_row($width, array("From:", "To:"));
$this->pdfinvoice->SetFont('times', 'i', $this->pdfinvoice->smallFont);
$this->_row($width, array("MY NAME", $customer['name_contact']));
$this->_row($width, array($address['phone'], $customer['name_customer']));
$this->_row($width, array($address['street'], $customer['address1_street']));
$this->_row($width, array($address['city']. ", ".$address['state']." ".$address['zipcode'],
$customer['address1_city']. ", ".$customer['address1_state']." ".$customer['address1_zip
完整的代碼是很坦率地說太長,在這裏插入,但你應該得到的想法,你會得到相當精確的佈局控制。
如果您已經使用phpExcel,它內置了庫(因此您可以調用該類) – rosh3000 2013-04-22 14:27:33
我會建議創造你想要的PDF什麼的HTML/CSS表示並用它來生成PDF。有幾十個的應用程序處理的轉化,有一個很好的線程有很多答案在這裏:Convert HTML + CSS to PDF with PHP?
你可能想看看html2Pdf。這是一個基於FPDF的php類,它允許您從HTML創建PDF文件。所以只需使用html格式化文本,然後創建其pdf。它非常靈活,並給予控制。
PDF生成往往會非常棘手。只要發票相對簡單,我會建議創建一個模板圖像文件,並使用imagettftext
在其上打印字符串(或任何其他庫)。
對於圖像文件轉換爲PDF ImageMagick的工具套件都可以使用(只要它是可用的服務器上):
exec('convert -units \'PixelsPerInch\' -density 150 '.$filename.'.png '.$filename.'.pdf');
對我來說,整個方法工作順利。
結帳作曲家的php-pdf-invoice
圖書館。該庫已經設計用於生成發票,因此它很容易和快速地集成!
composer require quickshiftin/php-pdf-invoice
您可以生成這個樣子
上有README的使用實例的PDF文件。基本上你實現了兩個界面,一個用於訂單,另一個用於訂單項目。您也可以根據自己的喜好配置字體和顏色。
你遇到過FPDF嗎?我以前看過它......看起來像很多工作,但很有希望 – 2011-05-06 17:05:54
是的,現在看看它 - 這裏很好的教程:http://www.web-development-blog.com/archives/create-pdf- documents-online-with-tcpdf/ – Martin 2011-05-06 17:12:41
我建議看看actualreports.com,他們是一個API和基於瀏覽器的文檔編輯器,用於創建不同的模板。對了,他們收取他們的服務。 – Tanel 2013-09-02 11:43:40