Re: Re:Generating bar codes
| From: | rip | 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
>
>
>