2012-10-15 55 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>标签也有其不足之处。