Pular para o conteúdo

Código de Barras

Achei esse script interessante e resolvi postar para que o pessoal soubesse do poder do PHP em gerar imagens, nesse caso um código de barras baseado em um parâmetro informado por vc.
Sidiney Sodré Gali de Souza sidsodre
Hits: 35.273 Categoria: PHP Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Achei esse script interessante e resolvi postar para que o pessoal soubesse do poder do PHP em gerar imagens, nesse caso um código de barras baseado em um parâmetro informado por vc.
Download codigo de barras.php Enviar nova versão

Esconder código-fonte

<?php
function CodigoBarras($code) {
  $lw = 2; $hi = 100;
  $Lencode = array('0001101','0011001','0010011','0111101','0100011',
                   '0110001','0101111','0111011','0110111','0001011');
  $Rencode = array('1110010','1100110','1101100','1000010','1011100',
                   '1001110','1010000','1000100','1001000','1110100');
  $ends = '101'; $center = '01010';
  /* UPC-A Must be 11 digits, we compute the checksum. */
  if ( strlen($code) != 11 ) { die("UPC-A Must be 11 digits."); }
  /* Compute the EAN-13 Checksum digit */
  $ncode = '0'.$code;
  $even = 0; $odd = 0;
  for ($x=0;$x<12;$x++) {
   if ($x % 2) { $odd += $ncode[$x]; } else { $even += $ncode[$x]; }
  }
  $code.=(10 - (($odd * 3 + $even) % 10)) % 10;
  /* Create the bar encoding using a binary string */
  $bars=$ends;
  $bars.=$Lencode[$code[0]];
  for($x=1;$x<6;$x++) {
   $bars.=$Lencode[$code[$x]];
  }
  $bars.=$center;
  for($x=6;$x<12;$x++) {
   $bars.=$Rencode[$code[$x]];
  }
  $bars.=$ends;
  /* Generate the Barcode Image */
  $img = ImageCreate($lw*95+30,$hi+30);
  $fg = ImageColorAllocate($img, 0, 0, 0);
  $bg = ImageColorAllocate($img, 255, 255, 255);
  ImageFilledRectangle($img, 0, 0, $lw*95+30, $hi+30, $bg);
  $shift=10;
  for ($x=0;$x<strlen($bars);$x++) {
   if (($x<10) || ($x>=45 && $x<50) || ($x >=85)) { $sh=10; } else { $sh=0; }
   if ($bars[$x] == '1') { $color = $fg; } else { $color = $bg; }
   ImageFilledRectangle($img, ($x*$lw)+15,5,($x+1)*$lw+14,$hi+5+$sh,$color);
  }
  /* Add the Human Readable Label */
  ImageString($img,4,5,$hi-5,$code[0],$fg);
  for ($x=0;$x<5;$x++) {
   ImageString($img,5,$lw*(13+$x*6)+15,$hi+5,$code[$x+1],$fg);
   ImageString($img,5,$lw*(53+$x*6)+15,$hi+5,$code[$x+6],$fg);
  }
  ImageString($img,4,$lw*95+17,$hi-5,$code[11],$fg);
  /* Output the Header and Content. */
  header("Content-Type: image/png");
  ImagePNG($img);
}

CodigoBarras('54879874585');
?>

Folha de Ponto, com datas móveis como Carnaval Sexta-Feira Santa e Corpus Christi

Upload

phpEasyInstaller

SuperTab - tabela HTML com paginação e ordenação (PHP + MySQL)

Consulta Yahoo! Buscas na Web

#1 Comentário enviado por dudus em 21/11/2005 - 14:55h
o PEAR tem uma ótima classe para geração de codigos de barra. Ele é mais facil de trabalhar e gera de vários padrões diferentes. Vale a pena dar uma olhada tabém
#2 Comentário enviado por removido em 22/11/2005 - 01:36h
Vou testar se esse script funcionar é show, só falta saber se o padrão gerado é aceito.
#3 Comentário enviado por removido em 10/03/2006 - 16:44h
Muito loko esse código de barras
#4 Comentário enviado por thandra em 03/05/2006 - 16:11h
Cara muito bom! Esse é um dos primeiros scripts que eu baixo e não tem nada p/ arrumar e é fácil de editar.
#5 Comentário enviado por ruysneto em 23/02/2007 - 15:01h
Esse script é excelente. Gostaria de saber de quem é. Esses caras devem aparecer com mais novidades. Ótima sacada sidsodre. Parabéns..... Resolveu o meu problema.
#6 Comentário enviado por lsouzabr em 08/11/2007 - 18:00h
O código é bom, porém preciso do padrão 2 of 5, mas eu já consegui o código.
Outra coisa é preciso informar que a entensão gd2 é preciso ser ativada!!!!
Valeu, até mais...
#7 Comentário enviado por luiznix em 26/12/2007 - 17:21h
Show de bola, funciona bem legal. Parabéns.

Alguém sabe onde posso arrumar um script assim para gerar códigos de barra padrão ean-13 ?

Obrigado
#8 Comentário enviado por removido em 22/10/2008 - 20:46h
Muito bom, tava procurando algo parecido, achei gracas a nosso membro do VOL!

flw
#9 Comentário enviado por JP_Pers em 02/09/2009 - 12:59h
É muito bom esse script, o código é lido por vários leitores (fiz o teste), mas não tô conseguindo add informações, nem antes nem depois do script e nem através de "include" será que alguem tem um help????

Vlw Galera!!!!
#10 Comentário enviado por guiegas em 17/04/2010 - 16:10h
Olá.. Eu utilizei da seguinte maneira:
<html>
<body>
<img src='cod.php'>
</body>
</html>
#11 Comentário enviado por hudyfx em 10/03/2011 - 21:13h
esses codigo é muito liko!!! peguei um leitor de codigo de barrar e testei. funciona perfeitamente!!!!!!
valeu!!!
vou dar um jeito de por esses codigo no meu projeto e depois ei posto aqui valeu!!!

Contribuir com comentário

Entre na sua conta para comentar.