我正在使用以下命令使用TCPDF生成PDF文件
$pdf->writeHTML($htmlcontent, true, 0, true, 0);
TCPDF还提供了一种使用以下命令创建条形码的方法
$pdf->Cell(0, 0, 'C39+', 0, 1);
$pdf->write1DBarcode('Code 39', 'C39+', '', '', 80, 15, 0.4, $style, 'N');
$pdf->Ln();
我希望能够编写条形码作为上述HTML代码的一部分。有容易的方法吗?
我可以在上面的writeHTML代码中调用条形码图像,但不确定如何使用上面的条形码函数(或TCPDF中的任何函数)来创建图像,然后将该图像转换为HTML生成。
发布于 2011-07-21 13:23:39
您可以使用HTML编写TCPDF方法,如下所示
<?php
$params = $pdf->serializeTCPDFtagParameters(array('40144399300102444888207482244309', 'C128C', '', '', 0, 0, 0.2, array('position'=>'S', 'border'=>false, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>false, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>2), 'N'));
$str='<table cellspacing="0" cellpadding="1" border="0">
<tr>
<td align="left">barcode</td>
</tr>
<tr>
<td align="center" style="padding-left:5px;">';
$str .= '<tcpdf method="write1DBarcode" params="'.$params.'" />';
$str .='</td>
</tr>
</table>';
$pdf->writeHTML($str,true, false,false,false,'left');
$pdf->Output('example_049.pdf', 'I');
?>
详情请查看TCPDF example_049.php
发布于 2011-09-27 15:39:00
TCPDF条形码类已经包含了以各种格式(SVG、PNG和HTML)导出条形码的方法。
2D示例:
require_once(dirname(__FILE__).'/2dbarcodes.php');
$barcodeobj = new TCPDF2DBarcode('http://www.tcpdf.org', 'QRCODE,H');
// export as SVG image
//$barcodeobj->getBarcodeSVG(3, 3, 'black');
// export as PNG image
//$barcodeobj->getBarcodePNG(3, 3, array(0,128,0));
// export as HTML code
echo $barcodeobj->getBarcodeHTML(3, 3, 'black');
1D示例:
require_once(dirname(__FILE__).'/barcodes.php');
$barcodeobj = new TCPDFBarcode('123456', 'C128');
// export as SVG image
//$barcodeobj->getBarcodeSVG(2, 30, 'black');
// export as PNG image
//$barcodeobj->getBarcodePNG(2, 30, array(0,128,0));
// export as HTML code
echo $barcodeobj->getBarcodeHTML(2, 30, 'black');
有关更多信息,请查看http://www.tcpdf.org上的文档和示例。
发布于 2010-08-20 18:35:55
您可以将您的条形码编号放入一个假的HTML标记,然后在编写HTML时解析该标记,如本例所示。
这将在您的HTML中:
some HTML.... <POSTNET>12345-1234</POSTNET> ....some more HTML
这是用于解析假标记的代码。
// look to see if there is a POSTNET tag
if (strpos($letter_html, "<POSTNET>") !== false) {
$postnet_pre = explode("<POSTNET>", $letter_html);
$this->WriteHTML($postnet_pre[0], $this->line_height);
// write the barcode
$postnet_post = explode("</POSTNET>", $postnet_pre[1]);
$zip_code = $postnet_post[0];
$this->write1DBarcode($zip_code, 'POSTNET', '', '', 80, 15, 0.4, $style, 'N');
// write rest of the letter
$this->WriteHTML($postnet_post[1], $this->line_height);
} else {
// no POSTNET so just write the whole letter
$this->WriteHTML($letter_html, $this->line_height);
}
https://stackoverflow.com/questions/2800499
复制相似问题