我需要一个能够生成条形码图像文件的类,最好与最常见的标准兼容。
我正在寻找基于这些事情的个人经验的建议/建议。
非常感谢
答案 0 :(得分:8)
这是一个用于生成barocdes的简单PHP脚本:
<?php
//For displaying barcodes
//Arguments are:
// code Number you want outputted as a barcode
//You can use this script in two ways:
// From a webpage/PHP script <img src='/images/barcode.php?code=12345'/>
// Directly in your web browser http://www.example.com/images/barcode.php?code=12345
//Outputs the code as a barcode, surrounded by an asterisk (as per standard)
//Will only output numbers, text will appear as gaps
//Image width is dynamic, depending on how much data there is
//Get the barcode font (called 'free3of9') from here http://www.barcodesinc.com/free-barcode-font/
header("Content-type: image/png");
$file = "images/barcode.png"; // path to base png image
$im = imagecreatefrompng($file); // open the blank image
$string = $_GET['code']; // get the code from URL
imagealphablending($im, true); // set alpha blending on
imagesavealpha($im, true); // save alphablending setting (important)
$black = imagecolorallocate($im, 0, 0, 0); // colour of barcode
$font_height=40; // barcode font size. anything smaller and it will appear jumbled and will not be able to be read by scanners
$newwidth=((strlen($string)*20)+41); // allocate width of barcode. each character is 20px across, plus add in the asterisk's
$thumb = imagecreatetruecolor($newwidth, 40); // generate a new image with correct dimensions
imagecopyresized($thumb, $im, 0, 0, 0, 0, $newwidth, 40, 10, 10); // copy image to thumb
imagettftext($thumb, $font_height, 0, 1, 40, $black, 'c:\windows\fonts\free3of9.ttf', '*'.$string.'*'); // add text to image
//show the image
imagepng($thumb);
imagedestroy($thumb);
?>
希望这会对你有所帮助。
答案 1 :(得分:3)
two PEAR packages和Zend Framework v1.10也会有BarCode类。
我没有使用过任何一个,所以我不推荐一个。
答案 2 :(得分:2)
如果您仍在寻找解决方案,我已经使用this(改编了ASP.NET版本),它可以毫无问题地生成EAN代码。
答案 3 :(得分:1)
这里有一个免费的lib,它有php类,jQuery插件和prototype插件。它非常 很好的例子visit