这是一个PHP实现条码生产的类,需要的朋友可以利用一下,整理发布, www.
<?php
classcd_barra
{
var$file;
var$into;
var$cd_barras=array(0=>\"00110\",1=>\"10001\",2=>\"01001\",3=>\"11000\",4=>\"00101\",
5=>\"10100\",6=>\"01100\",7=>\"00011\",8=>\"10010\",9=>\"01010\"
);
functioncd_barra($value,$into=1){
$lower=1;$hight=50;
$this->into=$into;
for($count1=9;$count1>=0;$count1--){
for($count2=9;$count2>=0;$count2--){
$count=($count1*10)+$count2;
$text=\"\";
for($i=1;$i<6;$i++){
$text.=substr($this->cd_barras[$count1],($i-1),1).substr($this->cd_barras[$count2],($i-1),1);
}
$this->cd_barras[$count]=$text;
}
}
//$img=imagecreate($lower*95+300,$hight+30);
$img=imagecreate(395,73);
$cl_black=imagecolorallocate($img,0,0,0);
$cl_white=imagecolorallocate($img,255,255,255);
imagefilledrectangle($img,0,0,$lower*95+1000,$hight+30,$cl_white);
imagefilledrectangle($img,1,5,1,65,$cl_black);
imagefilledrectangle($img,2,5,2,65,$cl_white);
imagefilledrectangle($img,3,5,3,65,$cl_black);
imagefilledrectangle($img,4,5,4,65,$cl_white);
$thin=1;
if(substr_count(strtoupper($_SERVER[’SERVER_SOFTWARE’]),\"WIN32\")){
//Otamanhoparawindowstemqueser3
//Forwindows,thewidebarhas=3
$wide=3;
}else{
$wide=2.72;
}
$pos=5;
$text=$value;
if((strlen($text)%2)<>0){
$text=\"0\".$text;
}
while(strlen($text)>0){
$i=round($this->barra_left($text,2));
$text=$this->barra_right($text,strlen($text)-2);
$f=$this->cd_barras[$i];
for($i=1;$i<11;$i+=2){
if(substr($f,($i-1),1)==\"0\"){
$f1=$thin;
}else{
$f1=$wide;
}
imagefilledrectangle($img,$pos,5,$pos-1+$f1,65,$cl_black); [Page]
$pos=$pos+$f1;
if(substr($f,$i,1)==\"0\"){
$f2=$thin;
}else{
$f2=$wide;
}
imagefilledrectangle($img,$pos,5,$pos-1+$f2,65,$cl_white);
$pos=$pos+$f2;
}
}
imagefilledrectangle($img,$pos,5,$pos-1+$wide,65,$cl_black);
$pos=$pos+$wide;
imagefilledrectangle($img,$pos,5,$pos-1+$thin,65,$cl_white);
$pos=$pos+$thin;
imagefilledrectangle($img,$pos,5,$pos-1+$thin,65,$cl_black);
$pos=$pos+$thin;
$this->put_img($img);
}
functionbarra_left($input,$comp){
returnsubstr($input,0,$comp);
}
functionbarra_right($input,$comp){
returnsubstr($input,strlen($input)-$comp,$comp);
}
functionput_img($image,$file=’test.gif’){
if($this->into){
imagegif($image,$this->file);
}else{
header(\"Content-type:image/gif\");
imagegif($image);
}
imagedestroy($image);
}
}
?>