Oi José, eu uso esse código aqui!!! Gera em um QrImage um código de barras 2de5intercalado.... Normalmente usado para bancos... Qualquer dúvida entre em contato em PVT... Procedure TImprimeCarteirinha.CriaCodigo(Cod : String; Imagem : TCanvas); Const digitos : array['0'..'9'] of string[5]= ('00110', '10001', '01001', '11000', '00101', '10100', '01100', '00011', '10010', '01010'); Var Numero : String; Cod1 : Array[1..1000] Of Char; Cod2 : Array[1..1000] Of Char; Codigo : Array[1..1000] Of Char; Digito : String; c1,c2 : Integer; x,y,z,h : LongInt; a,b,c,d : TPoint; I : Boolean; Begin Numero := Cod; For x := 1 to 1000 Do Begin Cod1 [x] := #0; Cod2 [x] := #0; Codigo[x] := #0; End; c1 := 1; c2 := 1; x := 1; For y := 1 to Length(Numero) div 2 do Begin Digito := Digitos[Numero[x ]]; For z := 1 to 5 do Begin Cod1[c1] := Digito[z]; Inc(c1); End; Digito := Digitos[Numero[x+1]]; For z := 1 to 5 do Begin Cod2[c2] := Digito[z]; Inc(c2); End; Inc(x,2); End; y := 5; Codigo[1] := '0'; Codigo[2] := '0'; Codigo[3] := '0'; Codigo[4] := '0'; { Inicio do Codigo } For x := 1 to c1-1 do begin Codigo[y] := Cod1[x]; Inc(y); Codigo[y] := Cod2[x]; Inc(y); end; Codigo[y] := '1'; Inc(y); { Final do Codigo } Codigo[y] := '0'; Inc(y); Codigo[y] := '0'; Imagem.Pen .Width := 1; Imagem.Brush.Color := ClWhite; Imagem.Pen .Color := ClWhite; a.x := 1; a.y := 0; b.x := 1; b.y := 79; c.x := 2000; c.y := 79; d.x := 2000; d.y := 0; Imagem.Polygon([a,b,c,d]); Imagem.Brush.Color := ClBlack; Imagem.Pen .Color := ClBlack; x := 0; i := True; for y:=1 to 1000 do begin If Codigo[y] <> #0 Then Begin If Codigo[y] = '0' then h := 2 Else h := 4; a.x := x; a.y := 0; b.x := x; b.y := 79; c.x := x+h-1; c.y := 79; d.x := x+h-1; d.y := 0; If i Then Imagem.Polygon([a,b,c,d]); i := Not(i); x := x + h; End; end; end;
José Maria <[EMAIL PROTECTED]> wrote: Alguem conhece algum freeware? Uso o DuckBarcode mas ele só existe até o Delphi 5. Se possível, me envie um exemplo em PVT. Obrigado Jose Maria -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por:PUBLICIDADE --------------------------------- Links do Yahoo! Grupos Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. __________________________________________________ Converse com seus amigos em tempo real com o Yahoo! Messenger http://br.download.yahoo.com/messenger/ [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html