【问题标题】:Get a table with barcodes with zend使用 zend 获取带有条形码的表格
【发布时间】:2013-03-18 13:38:30
【问题描述】:

我需要显示(并稍后打印)一个页面,其中包含一个包含条形码和每行描述的表格。

我有我的

$result = $mySql->query->fetchAll();

包含正确的数据。

一开始我做了一个

$rendererOptions = array();
    foreach($result as &$res){
        $barcodeOptions = array(
                'text' => $res['myParam'],
                'rendererParams' => array('imageType' => 'gif'),);
        $res['barcode'] = Zend_Barcode::factory('CODE39', 'image', $barcodeOptions, $rendererOptions)->draw();
}

    $this->view->data = $result;

结果不好。然后我尝试了:

Zend_Barcode::render(....);

有很多组合,甚至是一个

$.post('/mycontroller/myactionthatrendersthebarcode',{code : this.id}, function(data){
            $(this).html(data);     });

在我的 .phtml 页面中(几乎要杀死网络:D)

按照文档(http://framework.zend.com/manual/1.12/en/zend.barcode.creation.html) 我只有一个但正确的条形码或一堆我不知道如何管理的资源 ID。

有什么建议吗? 谢谢

【问题讨论】:

  • bad results 是什么意思?您是否收到异常/错误?
  • 不仅仅是损坏的图像徽标或根本没有结果。我唯一理解的是我想念这样做的“逻辑方法”......

标签: php zend-framework frameworks barcode


【解决方案1】:

draw 方法返回一个 gd 图像资源。要输出图像,您可以:

$rendererOptions = array();
$barcodeOptions = array(
    'text' => 'TEST',
    'rendererParams' => array('imageType' => 'gif'),
);
$resource = Zend_Barcode::factory('CODE39', 'image', $barcodeOptions, $rendererOptions)->draw();

header('Content-Type: image/gif');
imagegif($resource);
exit;

render 方法会自动为您完成:

$rendererOptions = array();
$barcodeOptions = array(
    'text' => 'TEST',
    'rendererParams' => array('imageType' => 'gif'),
);
Zend_Barcode::factory('CODE39', 'image', $barcodeOptions, $rendererOptions)->render();
exit;

如果您想在img 标签中输出图像,您必须将上述内容写入一个动作并调用它。所以例如上面的脚本在outputActionImgController

<img src="/img/output">

如果您想要动态的,您可以将 get 参数发送到操作并执行操作中的逻辑。

<img src="/img/output/text/TEXT">
<img src="/img/output/id/123">

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-05
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多