Estou anexando a fonte e as explicações como utilizar.
padrão febraban 5 2 intercalado

Andrea Chiuvitto wrote:

 Iderval,     Eu vou precisar gerar etiquetas com codigo de barra com algumas informações, por exemplo, IF08392152F*****2152 A1, mas se vc puder enviar fonte padrão febraban tambem, irá me ajudar em outro projeto. Andrea.
----- Original Message -----
Sent: Friday, May 03, 2002 10:23 AM
Subject: Re: [sqlwin] Codigo de Barra
 Tenho várias fontes que são free. Posso enviar para você. Seria interessante saber o tipo do documento que será impresso? e os caracteres.
É boleto bancário? (se for o código de barras e 5 2 intercalado pdrão febraban)
só será impresso número?

As fontes que tenho são true type você instala no windows e trabalha como se fosse uma fonte normal?
iderval

Andrea Chiuvitto wrote:

 Iderval,     Na verdade ainda não sei, pois este projeto esta no inicio e ainda nem todas as informações foram definidas, na verdade eu gostaria de saber onde encontrar fontes para codigo de barra para ir adiantando o processo. Andrea.
----- Original Message -----
Sent: Friday, May 03, 2002 7:32 AM
Subject: Re: [sqlwin] Codigo de Barra
 Qual o tipo de codigo de barras que você quer?
iderval

Andrea Chiuvitto wrote:

Pessoal,     Vcs poderiam me informar onde eu posso encontrar fonte para impressão de código de barra? Eu já li essa informação nesta lista, mas não consegui localizar-lá no histórico.    Desde já agradeço. Andrea Chiuvitto
Tecnologia da Informação - ICEC
Fone: (17) 3214-9979
E-mail: [EMAIL PROTECTED]
www.icec.com.br

Attachment: Code_2_5.ttf
Description: application/unknown-content-type-ttffile

Code 2/5 Interleaved True Type Font
===================================

Este Fonte True Type foi desenvolvido para plataformas Windows 95/98/NT e para ser uma 
alternativa aos desenvolvedores, visando facilitar a utiliza��o e a impress�o do 
c�digo de barras no padr�o 2 de 5 Intercalado, utilizado pelas institui��es 
financeiras do pa�s, nos boletos banc�rios, entre outros (Padr�o CNAB400 da FEBRABAN).

Garantia
========
Este Fonte True Type n�o tem garantia de nenhuma esp�cie, cabendo ao usu�rio 
utiliz�-lo sob seu pr�prio risco.

Distribui��o
============
Este Fonte � freeware, podendo ser distribuido livremente. 
A comercializa��o do mesmo � proibido parcial ou integralmente.

Instala��o
==========
Para instalar o Fonte, basta copiar o arquivo CODE_2_5.TTF no diret�rio Fonts do 
windows (ex.: C:\Windows\Fonts).
Para maiores detalhes da instala��o do Fonte, vide Help do pr�prio Windows.

Utiliza��o
==========
O padr�o 2 de 5 Intercalado tem as seguintes caracter�sticas:
� permite representa��o num�rica
� utiliza caracteres identificadores de in�cio e fim
� permite leitura bidirecional
� c�digo de tamanho vari�vel: � formado pela combina��o intercalada de cada dois 
caracteres, utilizando sua configura��o bin�ria. Portanto, o c�digo deve conter n�mero 
par de caracteres.
� quantidade ilimitada de caracteres
� as barras estreitas (E) s�o representadas pelo n�mero (0)
� as barras largas (L) s�o representadas pelo n�mero 1 (um)

Este fonte n�o gera o c�digo diretamente, a partir de uma sequ�ncia de d�gitos. Para 
poder imprimir o c�digo de barras, � necess�rio efeturar um tratamento da sequ�ncia de 
d�gitos, pois cada caracter do Fonte representa dois d�gitos de 00 a 99.
Para converter a sequ�ncia de d�gitos para o c�digo de barras, deve-se quebrar esta 
sequ�ncia de dois em dois caracteres e passar pela seguinte rotina

        if (A <= 49)
        {
                B = A + 48;
        }
        else
        {
                B = A + 142;
        }

onde A � representa o valor dos 2 d�gitos para codificar, e B ser� o valor do c�digo 
ASCII resultante destes 2 d�gitos.

Ex.: Para codificar 1256
12 -> 12 +  48 =  60
56 -> 56 + 142 = 198

Para finalizar, a sequ�ncia de caracteres gerada a partir dos d�gitos, dever� estar 
entre os delimitadores inicial e final, representado pelos caracteres:
( - delimitador inicial
) - delimitador final

No exemplo acima, o resultado final seria : (<�)


================================================================================================


Exemplos de fun��es
===================


=================
= Pascal/Delphi =
=================

Function StringCodigoBarra(sCodigo : String) : String;
var
  sCod, sTmp : String;
  ii, jj, iTmp : Integer;
begin

  //Pressupoe-se que existe um numero par de digitos em sCodigo

  //Inicializacao
  sTmp := '';
  iTmp := 0;
  ii := 1;
  jj := Length(sCodigo);
  sCod := '';

  While ii < jj do
  begin
    //Separando os digitos dois a dois
    sTmp := Copy(sCodigo, ii, 2);
    ii := ii + 2;
    iTmp := StrToInt(sTmp);

    //A + ABS(A<=49)*48 + ABS(A>=50)*142
    if (iTmp <= 49) Then
      iTmp := iTmp + 48
    else
      iTmp := iTmp + 142;

    // Pegando o caracter da conta acima.
    sCod := sCod + Chr(Byte(iTmp));
  end;

  //Delimitadores - inicial e final
  if (Length(sCod) > 0) then
    sCod := '(' + sCod + ')';

  //Retorno da funcao
  StringCodigoBarra := sCod;

end;

================================================================================================

=================
= Visual Basic  =
=================

Function StringCodigoBarra(ByVal sCodigo As String) As String
  Dim sCod As String, sTmp As String
  Dim ii As Integer, jj As Integer, iTmp As Integer

  'Pressupoe-se que existe um numero par de digitos em sCodigo

  'Inicializacao
  sTmp = ""
  iTmp = 0
  ii = 1
  jj = Len(sCodigo)
  sCod = ""

  Do While ii < jj
    'Separando os digitos dois a dois
    sTmp = Mid(sCodigo, ii, 2)
    ii = ii + 2
    iTmp = CInt(sTmp)

    'A + ABS(A<=49)*48 + ABS(A>=50)*142
    iTmp = iTmp + Abs(iTmp <= 49) * 48 + Abs(iTmp >= 50) * 142

    'Pegando o caracter da conta acima.
    sCod = sCod & Chr(iTmp)
  Loop

  'Delimitadores - inicial e final
  If (sCod <> vbNullString) Then
    sCod = "(" + sCod + ")"
  End If

  'Retorno da funcao
  StringCodigoBarra = sCod

End Function

================================================================================================

Aos desenvolvedores em C/C++ eu ficarei devendo, pois fazem muito tempo que 
n�o trabalho com esta maravilhosa linguagem (infelizmente), mas para quem se 
habilitar, basta converter o c�digo Pascal, pois a estrutura � a mesma e a convers�o � 
mais simples do que se utilizar o c�digo VB.

================================================================================================

Meus agradecimentos ao Sr. Ant�nio Gomes, pela ajuda e material para mim enviado, pelo 
qual, a partir destes, pude criar este fonte.

Elio Yamaguchi
[EMAIL PROTECTED]

Responder a