2012-10-15 60 views
0

我在我的web應用中使用jquery在div中構建條形碼。 黑色條形池莉構建與他們爲黑色或白色如下背景一套div標籤,使用PHP將HTML/CSS轉換爲PDF時出錯

<div style='padding: 0px; overflow: auto; width: 194px;' id='bar1'> 
    <div style='float: left; font-size: 0px; background-color: #FFFFFF; height: 40px; width: 60px'> 
    <div style='float: left; font-size: 0px; width:0; border-left: 2px solid #000000; height: 40px;'> 

我已經試過多個PHP包(htmp2pdf,DOMPDF,TCPDF)將其轉換爲PDF格式,但上來無論是空白PDF還是錯誤,因爲它會在內容中看到嵌套的div。 任何人都可以告訴我如何將這些生成的條碼轉換爲PDF起訴PHP?

+1

你確定所有div標籤都已關閉嗎?你是否試圖通過不使用內聯的CSS來做到這一點? –

+0

是的,它在HTML中呈現良好,但在轉換爲PDF時出現問題 –

回答

0

嘗試wkhtmltopdf這是一個簡單的shell實用程序,可以使用webkit渲染引擎將html轉換爲pdf。

要使用它,它解和類似這樣運行:

> wkhtmltopdf www.mydomain.com/barcode3 barcode3.pdf

基本上,它會運行在Ñ HTML頁面並生成PDF,無需純動態PDF生成的開銷!

這可能會爲您提供解決方案,但您需要檢查需求並確定它是否適合您的服務器限制。當我們用它直接從HTML生成準確的報告時,它工作得非常好。

編輯:EG,運行它作爲一個潛在的用戶函數在PHP中:

對於Linux:

exec("wkhtmltopdf http://mydomain.com /home/user/$user.barcode3.pdf 2>&1"); 

對於Windows:

<?php 
exec('C://path/to/package//wkhtmltopdf http://mydomain.html barcode3.pdf'); 

echo "PDF Created Successfully"; 
?> 
+0

這不符合我的需求,因爲實際上我需要爲我的網絡應用程序的用戶提供將它們生成的條形碼轉換爲pdf的功能 –

+0

您可以提供PHP驅動的用戶函數,使用PHP exec()函數自動執行這個包。 – nickhar

0

會這有助於你使用< img>數據而不是用< div>矩形繪製條形圖?不知道您是否需要Code 128或其他符號系統,但是在http://notionovus.com/blog/code-128-barcode/有一套完整的內聯(base64)Code 128圖像。

我最初試圖通過繪製矩形生成條形碼,但發現讓瀏覽器做縮放爲我節省了大量工作。聽起來像< div>標籤也有其不足之處。