我需要显示(并稍后打印)一个页面,其中包含每行包含条形码和说明的表格。
我有我的
$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) 我只有一个,但正确的条形码或一堆资源我不知道如何管理。
有什么建议吗? 谢谢
答案 0 :(得分:0)
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
标记中输出图像,则必须将上述内容写入操作并调用它。例如,上述脚本位于outputAction
ImgController
<img src="/img/output">
如果你想动态地动作,你可以将para参数发送到动作并在动作中执行逻辑。
<img src="/img/output/text/TEXT">
<img src="/img/output/id/123">