iPrintBarCode (<Valor do código de barras>, <Tipo>, <X1>, <Y1>, <X2>, <Y2> [, <Código estendido>])
<Valor do código de barras>: string de caracteres (com aspas)
Sequência de caracteres que será representada como um código de barras.
<Tipo>: constante inteira
Tipo de código de barras a representar (os diferentes tipos de códigos de barras suportados por WINDEV são apresentados em Gestão de códigos de barras ).
BC_AZTEC
Código de barras asteca.
BC_CODE128
Código de barras Code128.
BC_CODE39
Código de barras Code39.
Código de barras utilizável com <Código estendido> correspondente a BC_Extended ou BC_Check O valor do código de barras pode conter os caracteres de início e fim (caractere "*"). Nesse caso, esses caracteres serão adicionados ao desenho do código de barras e serão impressos no texto exibido abaixo do código de barras. Se esses caracteres não forem encontrados no valor do código de barras, eles serão automaticamente adicionados ao desenho do código de barras. No entanto, eles não serão impressos no texto exibido abaixo do código de barras.
BC_CODE93
Código de barras Code93.
Código de barras utilizável com <Código estendido> correspondente a BC_Extended ou BC_Check ).
BC_CODE11
Código de barras Code11.
Este tipo de código de barras não está disponível.
BC_INTER2OF5
Código de barras 2 de 5 intercalado.
Código de barras utilizável com <Código estendido> correspondente a BC_Check .
BC_CODABAR
Código de barras Codabar.
Código de barras utilizável com <Código estendido> correspondente a BC_Check .
BC_DATAMATRIX
Código de barras Data Matrix.
BC_EAN128
Código de barras EAN-128.
Este tipo de código de barras não está disponível.
Um caractere de controle é inserido automaticamente após o 11º caractere.
<X1>: Real
Coordenada horizontal do canto superior esquerdo do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a largura da página (retornado por iPageWidth ).
<Y1>: Real
Coordenada vertical do canto superior esquerdo do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a altura da página (retornado por iPageHeight ).
<X2>: Real
Coordenada horizontal do canto inferior direito do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a largura da página (retornado por iPageWidth ).
<Y2>: Real
Coordenada vertical do canto inferior direito do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a altura da página (retornado por iPageHeight ).
<Código estendido>: Constante inteira opcional (ou combinação de constantes)
Características do código de barras.
BC_Bottom
Código de barras localizado na parte inferior do retângulo de destino.
Códigos de barras afetados: todos
BC_ControlDigits
Códigos de barras contendo caracteres de controle. Por padrão, os caracteres de controle são colocados entre os caracteres "<" e ">". Para que esses caracteres não sejam interpretados como caracteres de controle, eles devem ser duplicados. Veja os diferentes tipos de códigos de barras para obter mais detalhes.
Códigos de barras afetados: códigos de barras BC_CODE128 , BC_DATAMATRIX , BC_EAN128 , BC_GS1_128 e BC_PDF417 .
BC_CheckDigits
Códigos de barras contendo caracteres de verificação. Se esta opção for selecionada, os BC_ControlDigits e BC_Charsets constantes são automaticamente tidos em conta.
Códigos de barras afetados: códigos de barras BC_CODE128 , BC_DATAMATRIX , BC_EAN128 , BC_GS1_128 e BC_PDF417 .
BC_CenterH
Código de barras centralizado horizontalmente no retângulo de destino.
Códigos de barras afetados: todos
BC_CenterV
Código de barras centralizado verticalmente no retângulo de destino.
Códigos de barras afetados: todos
BC_Right
Código de barras alinhado à direita no retângulo de destino.
Códigos de barras afetados: todos
BC_Extended
Código de barras estendido.
Códigos de barras afetados: códigos de barras BC_CODE39 e BC_CODE93 .
BC_FormatText
Formata o texto exibido: colchetes são adicionados ao redor de AIs no texto impresso.
Códigos de barras afetados: códigos de barras EAN 128 ou GS1-128 .
BC_Left
Código de barras alinhado à esquerda no retângulo de destino.
Códigos de barras afetados: todos
BC_Top
Código de barras localizado na parte superior do retângulo de destino.
Códigos de barras afetados: todos
BC_IgnoreFormatting
Ignora os colchetes encontrados em um código de barras 128, EAN-128 ou GS1-128. Os colchetes permitem que os usuários leiam facilmente o código de barras, mas não são desenhados no código.
Códigos de barras afetados: códigos de barras CB_CODE128 , CB_EAN128 e CB_GS1_128 .
BC_Charsets
Código de barras que usa um ou mais conjuntos de caracteres para compactar o código de barras. Este conjunto de caracteres deve ser definido no valor do código de barras. Consulte Os diferentes tipos de códigos de barras para obter mais detalhes.
Códigos de barras afetados: todos
BC_NotProportional
Ajusta o código de barras ao tamanho do retângulo de destino.
Códigos de barras afetados: todos
BC_NoText
Não exibe texto abaixo do código de barras.
Códigos de barras afetados: códigos de barras BC_UPCA , Bc_UPCB , BC_EAN13 e BC_EAN8 .
BC_Text
Exibe o texto abaixo do código de barras. O texto é normalizado para os códigos de barras BC_UPCA , BC_UPCE , BC_EAN13 e BC_EAN8 . Para os outros tipos de códigos de barras, o texto pode ultrapassar a borda de exibição do código de barras.
Códigos de barras afetados: todos
BC_Check
Código de barras com caracteres de verificação.
Códigos de barras afetados: códigos de barras BC_CODE39 , BC_CODE93 , BC_INTER2OF5 e BC_CODABAR .
BC_Vertical
Imprime o código de barras verticalmente.
Códigos de barras afetados: todos
BC_90
Imprime o código de barras verticalmente.
Códigos de barras afetados: todos
BC_180
Imprime o código de barras enquanto executa uma rotação igual a 180 graus.
Códigos de barras afetados: todos
BC_270
Imprime o código de barras enquanto executa uma rotação igual a 270 graus.
iPrintBarCode (<código de barras>, <X1>, <Y1>, <X2>, <Y2>)
<Código de barras>: variável BarCode
Nome da variável BarCode contendo a descrição do código de barras a ser impresso.
<X1>: Real
Coordenada horizontal do canto superior esquerdo do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a largura da página (retornado por iPageWidth ).
<Y1>: Real
Coordenada vertical do canto superior esquerdo do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a altura da página (retornado por iPageHeight ).
<X2>: Real
Coordenada horizontal do canto inferior direito do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a largura da página (retornado por iPageWidth ).
<Y2>: Real
Coordenada vertical do canto inferior direito do retângulo onde o código de barras será desenhado (em milímetros). Valor incluído entre 0 e a altura da página (retornado por iPageHeight ).
Observações
Códigos de barras UPC e EAN: tamanho dos códigos de barras
O padrão para os códigos UPC e EAN define a proporção entre a altura e a largura dos códigos de barras. Os desenhos desses códigos de barras respeitam esse padrão por padrão. No entanto, a constante BC_NotProportional permite que você desenhe códigos de barras "não padrão".
Observação : O espaço usado para desenhar o código de barras não pode ser ocupado a 100%. Na verdade, o tamanho de cada barra é calculado de forma que um código de barras sempre possa ser lido.
Tamanho dos códigos de barras
A largura real do desenho de um código de barras pode ser menor que a largura especificada.
Na verdade, a largura de cada barra é calculada a partir da barra mais estreita encontrada no código de barras. A largura de cada barra deve ser um número inteiro de pixels.
Exemplo para calcular a largura de um código de barras:
O desenho deve ter 130 pixels de largura.
O desenho contém 10 barras estreitas de largura 1 e 5 barras grandes de largura 2.
Calculando a largura de uma barra estreita = 110 / (10 + 5 * 2) = 5 pixels
Calculando a largura total do desenho = 5 * (10 + 5 * 2) = 100 pixels
Uma vez que a constante BC_CenterH tenha sido usada, o desenho começará em (110-100) / 2 = 5 pixels da borda esquerda e terminará em 5 pixels da borda direita.
Impressão de um código de barras DataMatrix ou PDF417
As seguintes opções são levadas em consideração quando um código de barras DataMatrix ou PDF417 é impresso usando iPrintBarCode :
Matriz de dados
Tamanho da matriz calculado de acordo com o comprimento da string e otimizado para obter uma matriz quadrada.
Conjunto de caracteres: WINDEV otimiza a escolha de conjuntos de caracteres para escrever o código de barras com o menor número possível de caracteres.
PDF417
Tamanho da matriz calculado de acordo com a string
Nível de correção calculado de acordo com o comprimento (após a compressão) dos dados a codificar:
de 1 a 40 caracteres: nível 2
de 41 a 160 caracteres: nível 3
de 161 a 320 caracteres: nível 4
de 321 caracteres: nível 5
Altura da linha: 4
Conjunto de caracteres: WINDEV otimiza a escolha de conjuntos de caracteres para escrever o código de barras com o menor número possível de caracteres.