我正在尝试使用http://www.barcodebakery.com生成条形码,但我的脚本没有显示条形码图像。这是我的代码:
<?php
require_once('../barcodegen/class/BCGFontFile.php');
require_once('../barcodegen/class/BCGColor.php');
require_once('../barcodegen/class/BCGDrawing.php');
require_once('../barcodegen/class/BCGcode128.barcode.php');
//$font = new BCGFontFile('./barcodegen/class/font/Arial.ttf', 18);
$color_black = new BCGColor(0, 0, 0);
$color_white = new BCGColor(255, 255, 255);
// Barcode Part
$code = new BCGcode128();
$code->setScale(2);
$code->setThickness(30);
$code->setForegroundColor($color_black);
$code->setBackgroundColor($color_white);
//$code->setFont($font);
$code->setStart(NULL);
$code->setTilde(true);
$code->parse('123456');
// Drawing Part
$drawing = new BCGDrawing('', $color_white);
$drawing->setBarcode($code);
$drawing->draw();
header('Content-Type: image/png');
$drawing->finish(BCGDrawing::IMG_FORMAT_PNG);
?>
我有什么遗失的吗?
当我打印$ drawing时,我得到值‰PNG IHDRÊO%zÍ”LtEXtCopyrightGenerated with Barcode Generator for PHP http://www.barcodephp.comYp¸³IDATxœíØÑnƒ †QXöþ¯Ì.LQa¶ÝŸ.圫q2óµtZk¥”Zëþóf9Ïìö瞎ίx>«ŸÓ›¯áþÚæW¼sîÿæù ïßáùÌÑ çwr4çÑ¿ñëòð'äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼’Aò"H^É‹ y$/‚äE¼ªµw¯e÷"H^É‹ y$/‚äEÐ÷»ð¯ÕZK)ço7Ûø¦?Ú_ž¸»×С•Ãxkm«gŸÖ-ËgÕkóýi>rçÐ"V8Žg£íç~+Ú*‹çu( ÖZëcÛùeC{”‹·U÷Ú_’ž3ÚŸ¼{íì^/;©³µöÄvøaÖÍkô’þܹ\ZúáØ{½m¯úuÚR–Þº_ú Fÿ3Ž*¼<ºò½Ý,iŽýb>ÌžúIEND®B
,`
但标题(&#39;内容类型:image / png&#39;)不会显示任何图片,只会显示一个小图标。
答案 0 :(得分:1)
您的代码应该按照User Guide。
中的示例进行操作您为什么要打印$drawing
?只需在浏览器中打开页面,您就会看到生成的条形码。正如他们解释
如果您之前指定了文件名,图像将保存到此文件中,否则将显示。
因此,如果您希望将其保存在某处,只需在需要时添加文件名。
$drawing = new BCGDrawing('/route/to/your/file.png', $colorBack);