Re: Re:Generating bar codes

From: Date: Tue, 17 Oct 2000 19:56:51 +0000
Subject: Re: Re:Generating bar codes
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-20700@lists.php.net to get a copy of this message
PDFLib won't write to an existing PDF and I don't have a clue about fdftk At 02:31 PM 10/17/00 -0500, you wrote: >Here's a little snippet I picked up somewhere (sadly, I have >no clue where) and never got around to doing anything with. >(I'm a source code packrat, what can I say....). It looks >very much like what you are wanting to do. I have no idea >if it works or not, but it'd be worth a try. I'll trade you >info if you know how to apply a watermark to an existing PDF >file using PDFlib or fdftk? > >Here Goes: > >First, the REAL code here is the hard work of Stefan Powell, > > I have only modified it to be useable in a production >environment. > Notice, please test the actual barcode and let me know how >it scans > onscreen. > > REQUIRED: GD compiled into PHP. > > Features: > > o No fonts needed. This creates barcodes on the fly, >drawing them > with gd. > o Amazingly fast and versatile. Specify the characters >to convert > to barcode ON THE FLY! > o Cool backup feature-If for some reason the operator >can't get the > barcode to scan, they hang their pointer over the >barcode and the > 'alt' feature displays the characters to enter in >manually. > > -Steven S. Boger > sboger@hotmail.com > > NOTE1: IMPORTANT! THE PROGRAM THAT DISPLAYS THIS PAGE KEEPS >PUTTING AN > EXTRA " AFTER THE DOLLAR SIGN ON THE '"Z"=> "011010000", > " >"=> "011000100", > "$"=> "010101000",' LINE. YOU *MUST* REMOVE THIS WHEN YOU >COPY/PASTE THE > CODE! > > NOTE2: having just one extra blank line in code2 will make >it puke. Put NO > blank lines at the beginning. > > > -----------code1(i.e. >index.phtml)--------------------------------- > <?php > function barcode($text) { > $enc_text = urlencode($text); > echo "<img src=\"barcode.phtml?$enc_text\" >border=0 > Alt=\"$text\">"; > } > ?> > <HTML> > <BODY bgcolor=white> > <?barcode( "steven boger");?> > </BODY> > </HTML> > > > -----code2(i.e. barcode.phtml)-just a few small mods to >Stefan's code------ > <?php > $text = implode($argv, " "); > $barcodeheight=40; > $barcodethinwidth=2; > $barcodethickwidth=$barcodethinwidth*3; > $codingmap = Array( "0"=> "000110100", "1"=> >"100100001", > "2"=> "001100001", "3"=> "101100000", > "4"=> >"000110001", > "5"=> "100110000", "6"=> "001110000", > "7"=> >"000100101", > "8"=> "100100100", "9"=> "001100100", > "A"=> >"100001001", > "B"=> "001001001", "C"=> "101001000", > "D"=> >"000011001", > "E"=> "100011000", "F"=> "001011000", > "G"=> >"000001101", > "H"=> "100001100", "I"=> "001001100", > "J"=> >"000011100", > "K"=> "100000011", "L"=> "001000011", > "M"=> >"101000010", > "N"=> "000010011", "O"=> "100010010", > "P"=> >"001010010", > "Q"=> "000000111", "R"=> "100000110", > "S"=> >"001000110", > "T"=> "000010110", "U"=> "110000001", > "V"=> >"011000001", > "W"=> "111000000", "X"=> "010010001", > "Y"=> >"110010000", > "Z"=> "011010000", " "=> "011000100", > "$"=> >"010101000", > "%"=> "000101010", "*"=> "010010100", > "+"=> >"010001010", > "-"=> "010000101", "."=> "110000100", > "/"=> >"010100010"); > $text = strtoupper($text); > $text = "*$text*"; // add start/stop chars. > $textlen = strlen($text); > $barcodewidth = ($textlen)*(7*$barcodethinwidth > + > 3*$barcodethickwidth)-$barcodethinwidth; > $im = ImageCreate($barcodewidth,$barcodeheight); > $black = ImageColorAllocate($im,0,0,0); > $white = ImageColorAllocate($im,255,255,255); > imagefill($im,0,0,$white); > $xpos=0; > for ($idx=0;$idx<$textlen;$idx++) { > $char = substr($text,$idx,1); > // make unknown chars a '-'; > if (!isset($codingmap[$char])) $char = "-"; > for ($baridx=0;$baridx<=8;$baridx++) { > $elementwidth = >(substr($codingmap[$char],$baridx,1)) ? > >$barcodethickwidth > : $barcodethinwidth; > if (($baridx+1)%2) >imagefilledrectangle($im,$xpos,0,$xpos+ > > $elementwidth-1,$barcodeheight,$black); > $xpos+=$elementwidth; > } > $xpos+=$barcodethinwidth; > } > Header( "Content-type: image/gif"); > ImageGif($im); > ImageDestroy($im); > return; > ?> >----- >end of pasted code. >Hope this helps. > >-- >John Parker, Design Engineer, Snorkel International >Ph: 816/676-6419 Fax: 785/989-3556 > > > > >-- >PHP General Mailing List (http://www.php.net/) >To unsubscribe, e-mail: php-general-unsubscribe@lists.php.net >For additional commands, e-mail: php-general-help@lists.php.net >To contact the list administrators, e-mail: php-list-admin@lists.php.net > > >

« previous php.general (#20700) next »