PHP5生成条形码的简单实例


  本文标签:PHP5生成条形码

  该软件支持PHP4和PHP5两个版本,本文中使用的是PHP5的版本  。在使用前注意要将PHP的GD模块开启  。在Windows中为php_gd2.dll,Linux中为gd.so  。将压缩文件解压到Apache,执行http://localhost/barcode/index.php  。PHP5生成条形码见下图:

  1. Type:选择条形码类型

  2. Output:输出的图片格式

  3. Thickness:条形码高度

  4. Resolution:条形码大小

  5. Font:条形码下方的文字大小,也可不显示文字

  6. Text:条形码打印的内容

条码效果

  

  当然,这个PHP5生成条形码程序只是将文字生成为条形码,但使用时不能灵活将其嵌入其他PHP程序,我将压缩包里面的test.php做了一些调整,使其能灵活的用于其他程序  。运行时只需将条码类型和文字传给test.php即可,例如:
http://localhost/barcode/test.php?codebar=BCGcode39&text=20090729

  或运行 http://localhost/barcode/mytest.php

  mytest.php代码:

  1. <img src="test.php?codebar=BCGcode39&text=20090729"> 
PHP5生成条形码效果图:

运行实例效果图

  

  

  PHP5生成条形码test.php代码:

  1. // Including all required classes  
  2. require(class/BCGFont.php);  
  3. require(class/BCGColor.php);  
  4. require(class/BCGDrawing.php);  
  5. /*BCGcodabar,BCGcode11,BCGcode39,BCGcode39extended,BCGcode93,  
  6. BCGcode128,BCGean8,BCGean13,BCGisbn,BCGi25,BCGs25,BCGmsi,  
  7. BCGupca,BCGupce,BCGupcext2,BCGupcext5,BCGpostnet,BCGothercode*/ 
  8. $codebar = $_REQUEST[codebar]; //该软件支持的所有编码,只需调整$codebar参数即可  。  
  9. // Including the barcode technology  
  10. include(class/.$codebar..barcode.php);  
  11. // Loading Font  
  12. $font = new BCGFont(./class/font/Arial.ttf, 10);  
  13. // The arguments are R, G, B for color.  
  14. $color_black = new BCGColor(0, 0, 0);  
  15. $color_white = new BCGColor(255, 255, 255);  
  16. $code = new $codebar();  
  17. $code->setScale(2); // Resolution  
  18. $code->setThickness(30); // Thickness  
  19. $code->setForegroundColor($color_black); // Color of bars  
  20. $code->setBackgroundColor($color_white); // Color of spaces  
  21. $code->setFont($font); // Font (or 0)  
  22. $text = $_REQUEST[text]; //PHP5生成条形码将要数据的内容  
  23. $code->parse($text);  
  24. /* Here is the list of the arguments  
  25. 1 - Filename (empty : display on screen)  
  26. 2 - Background color */ 
  27. $drawing = new BCGDrawing($color_white);  
  28. $drawing->setBarcode($code);  
  29. $drawing->draw();  
  30. // Header that says it is an image (remove it if you save the barcode to a file)  
  31. header(Content-Type: image/png);  
  32. // Draw (or save) the image into PNG format.  
  33. $drawing->finish(BCGDrawing::IMG_FORMAT_PNG);  
  34. ?> 
在运行过程中出现异常";
throw $e; //重掷异常
}
}
?﹥