如何使用示例49和serializeTCPDFtagParameters而不是write1DBarcode将TCPDF条形码放在html表中?

dig*_*tai 6 html php barcode tcpdf

我需要打印许多1D和2D条形码,并将它们放在html格式的文档中.环顾四周,我发现使用TCPDF方法是可行的,实际上No.49给出了解决方案.

$params = $pdf->serializeTCPDFtagParameters(array('CODE 128', 'C128', '', '', 80, 30, 0.4, array('position'=>'S', 'border'=>true, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>true, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>4), 'N'));
$html .= '<tcpdf method="write1DBarcode" params="'.$params.'" />';
Run Code Online (Sandbox Code Playgroud)

但是,在我自己的PHP脚本上实现时,不会呈现条形码.我创建了一个test.php文件,其中只剪切并粘贴了整个49个示例PHP代码,并再次只是重新显示$ html内容,但没有使用$ params定义的任何内容.
但是,我再说一遍

 $pdf->write1DBarcode(...)
Run Code Online (Sandbox Code Playgroud)

并且工作完美,按预期呈现条形码,但正如您所知,这不是将条形码放在许多html表中的方法.

任何想法?,我正在使用在Debian 7服务器上运行的PHP 5.6,TCPDF最新版本.另外我无法导入tcpdf_include.php,因为它来自examples文件夹,而是使用了tcpdf.php,一切正常.

同样,为了澄清,我可以使用write2DBarcode()方法生成1D和2D条形码,但不能使用generateserializeTCPDFtagParameters()方法生成条形码, 这是在条形码中放置条形码,如示例49中所述.

根据@taxicali的要求,这是一个示例输出,适用于需要准确条形码的本地包裹公司,以便扫描仪快速读取.

dig*_*tai 5

TCPDF生成的条形码表的样本

我刚刚解决了这个问题,顺便说一下这可能是一个常见问题:我刚刚复制了位于以下位置的tcpdf_config.php文件:

/tcpdf/
      examples/
              config/
Run Code Online (Sandbox Code Playgroud)

并粘贴到这里:

/tcpdf/
      config/
Run Code Online (Sandbox Code Playgroud)

不再,这只是依赖的问题。


web*_*ter 5

要使用tcpdf html标记,您需要在tcpdf_config.php文件中将常量'K_TCPDF_CALLS_IN_HTML'设置为'TRUE',如示例中红色顶部所示

https://tcpdf.org/examples/example_049/

/**
 * If true allows to call TCPDF methods using HTML syntax
 * IMPORTANT: For security reason, disable this feature if you are printing user HTML content.
 */
define('K_TCPDF_CALLS_IN_HTML', true);
Run Code Online (Sandbox Code Playgroud)


tax*_*ala 0

如果没有完整的代码,解决这个问题可能会非常困难,我不久前曾使用过 PDF 和条形码,遇到了很多问题,很多令人头疼的问题,直到我让它工作起来。有人想我必须问一下,你的 TCPDF 是否带有字体文件?我认为也许您没有包含字体文件,因此您将无法渲染应渲染的条形码,另一件好事是您向我们展示渲染后获得的输出。