Hi,
Ich will automatisch mit php einen Barcode erstellen lassen. hab folgenden code:
Obwohl die GDLib installiert ist zeigt er mir beim aufrufen der Index.php kein image an bzw. nur ein kasten mit rotem Kreuz. Jemand ne idee woran das liegt?
Ich will automatisch mit php einen Barcode erstellen lassen. hab folgenden code:
PHP-Code:
-----------code1(index.php)-------
<?php
function barcode($text) {
$enc_text = urlencode($text);
echo "<img src=\"barcode.phtml?$enc_text\" border=0
Alt=\"$text\">";
}
?>
<HTML>
<BODY bgcolor=white>
<?barcode( "12345678");?>
</BODY>
</HTML>
-----code2( barcode.php)-------
<?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*";
$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);
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;
?>
Kommentar