Página 1 de 2

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 08 Set 2017 15:33
por Maurício Elias
Boa tarde parceiros, como vão ?
Como imprimo código de barras usando o Harbour 3.2 ?
Agradeço a todos.

Maurício.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 08 Set 2017 22:49
por Toledo
Amigo, veja estes exemplos:

C:\hb32\contrib\hbgd\tests\barcode.prg
C:\hb32\contrib\hbgd\tests\barcode2.prg
C:\hb32\contrib\hbtip\hbzebra\tests\cairo.prg
C:\hb32\contrib\hbtip\hbzebra\tests\harupdf.prg
C:\hb32\contrib\hbtip\hbzebra\tests\wingdi.prg
C:\hb32\contrib\hbwin\tests\prn1.prg
C:\hb32\extras\ps32\TPSCRIPT.PRG

Nos arquivos acima, procure por barcode.

Abraços

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 31 Ago 2020 22:31
por Linguagemclipper
Amigos, preciso da HBGD para imprimir código de barras, mas parece que não veio pronta com o Harbour 3.2.
Já fazia isso com o xHarbour, o problema é compilar com o Harbour 3.2.
Se eu faço isso:

Código: Selecionar todos

#BGD e FreeImage
hbgd.hbc
hbfimage.hbc
Dá erro para a HBGD, mas a FreeImage passa.
I:/hb32/comp/mingw/bin/../lib/gcc/i686-w64-mingw32/7.3.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lhbgd
Como é que eu resolvo essa parada?

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 09:51
por asimoes
Olá,

Vai ter que gerar o harbour compilando a lib exemplo:

SET HB_WITH_GD=C:\gd\include

O problema é achar o projeto da lib pra compilar.

Agora se é somente para gerar o CB tem exemplo na Minigui, pode usar também Win_Prn() usando fonte para código de barras.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 10:17
por JoséQuintas
asimoes escreveu:pode usar também Win_Prn() usando fonte para código de barras.
Só pra ajudar:

Existe fonte arial, courier, etc. e também fonte pra código de barras.
Usa como se fosse um tipo de letra, mas é código de barras.
E, lógico, precisa distribuir com o aplicativo.

O ideal é usar a hbzebra, que tem tudo que é código de barras, inclusive QRCode, e faz parte do Harbour sem precisar baixar nada adicional.
A hbzebra é uma rotina de "desenho", onde se passa o código e um codeblock.
Se o codeblock vai desenhar pra impressora, pra PDF, pra tela, pra arquivo de imagem.... tanto faz...
Acaba sendo bem flexível, porque dá pra usar pra qualquer coisa.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 10:25
por asimoes
Achei o projeto da GD mas é de 2005

https://sourceforge.net/projects/gnuwin ... /2.0.33-1/

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 10:26
por asimoes
Quintas,

Tinha esquecido da Hbzebra, é melhor usar ela.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 10:29
por asimoes
Na pasta tests da hbzebra, boa diversão

Código: Selecionar todos

PROCEDURE Main()

   LOCAL hSurface := cairo_pdf_surface_create( hb_FNameExtSet( __FILE__, ".pdf" ), 567, 794 )  // A4
   LOCAL hCairo := cairo_create( hSurface )

   cairo_set_source_rgb( hCairo, 1.0, 1.0, 1.0 )
   cairo_paint( hCairo )
   cairo_select_font_face( hCairo, "sans-serif", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL )
   cairo_set_font_size( hCairo, 10 )
   cairo_set_source_rgb( hCairo, 0, 0, 0 )

   DrawBarcode( hCairo,  20,   1, "EAN13",      "477012345678" )
   DrawBarcode( hCairo,  40,   1, "EAN8",       "1234567" )
   DrawBarcode( hCairo,  60,   1, "UPCA",       "01234567891" )
   DrawBarcode( hCairo,  80,   1, "UPCE",       "123456" )
   DrawBarcode( hCairo, 100,   1, "CODE39",     "ABC123" )
   DrawBarcode( hCairo, 120,   1, "CODE39",     "ABC123", HB_ZEBRA_FLAG_CHECKSUM )
   DrawBarcode( hCairo, 140, 0.5, "CODE39",     "ABC123", HB_ZEBRA_FLAG_CHECKSUM + HB_ZEBRA_FLAG_WIDE2_5 )
   DrawBarcode( hCairo, 160,   1, "CODE39",     "ABC123", HB_ZEBRA_FLAG_CHECKSUM + HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 180,   1, "ITF",        "1234", HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 200,   1, "ITF",        "12345678901", HB_ZEBRA_FLAG_CHECKSUM )
   DrawBarcode( hCairo, 220,   1, "MSI",        "1234" )
   DrawBarcode( hCairo, 240,   1, "MSI",        "1234", HB_ZEBRA_FLAG_CHECKSUM + HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 260,   1, "MSI",        "1234567", HB_ZEBRA_FLAG_CHECKSUM )
   DrawBarcode( hCairo, 280,   1, "CODABAR",    "40156", HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 300,   1, "CODABAR",    "-1234", HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 320,   1, "CODE93",     "ABC-123" )
   DrawBarcode( hCairo, 340,   1, "CODE93",     "TEST93" )
   DrawBarcode( hCairo, 360,   1, "CODE11",     "12", HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 380,   1, "CODE11",     "1234567890", HB_ZEBRA_FLAG_CHECKSUM + HB_ZEBRA_FLAG_WIDE3 )
   DrawBarcode( hCairo, 400,   1, "CODE128",    "Code 128" )
   DrawBarcode( hCairo, 420,   1, "CODE128",    "61300073570004616" )
   DrawBarcode( hCairo, 440,   1, "CODE128",    "Wikipedia" )
   DrawBarcode( hCairo, 460,   1, "PDF417",     "Hello, World of Harbour!!! It's 2D barcode PDF417 :)" )
   DrawBarcode( hCairo, 540,   1, "DATAMATRIX", "Hello, World of Harbour!!! It's 2D barcode DataMatrix :)" )
   DrawBarcode( hCairo, 580,   1, "QRCODE",     "https://en.wikipedia.org/wiki/QR_Code" )
   cairo_destroy( hCairo )
   cairo_surface_write_to_png( hSurface, hb_FNameExtSet( __FILE__, ".png" ) )
   cairo_surface_destroy( hSurface )

   RETURN

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 10:45
por asimoes
Exemplo usando HbZebra:
demo.pdf
(41.23 KiB) Baixado 441 vezes

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 13:08
por Linguagemclipper
Simões, eu já tinha conseguido baixar o projeto da GD, mas não consigo compilar. Falta algo.
Meu sistema já funciona com a GD para código de barras bonitinho no xHarbour, mas quero compilar no Harbour agora, mas não consigo.
Essa Zebra tem no xHarbour também? Preciso de uma solução que funcione em ambos, tanto no xHarbour quanto no Harbour.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 13:21
por asimoes
xHarbour eu não uso então fica difícil dizer, xHarbour não recomendo o uso.
Qualquer exemplo aqui na maioria é para harbour 3.2 ou 3.4

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 01 Set 2020 13:53
por Linguagemclipper
Entendo. Meu problema é arrumar essa HBGD.
O resto é só compilar porque está tudo pronto.

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 11 Dez 2021 17:34
por fogueira
Asimoes, como compilar o exemplo que referiu que está no cairo.prg da pasta tests?

Obrigado

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 12 Dez 2021 14:48
por alxsts
Olá!

Infelizmente o colega Alexandre Simões é falecido. Vejamos se outro colega pode te ajudar. Sucesso!

Como Imprimir Cód.Barras no Harbour 3.2 ?

Enviado: 13 Dez 2021 06:08
por JoséQuintas
Basicamente, a hbzebra gera o código de barras, e chama uma rotina que VOCÊ define pra fazer o desenho.
Se vai ser PDF, impressora, tela, etc. tanto faz, VOCÊ é que coloca a rotina.
Essa rotina é um codeblock.

Como é comum no Harbour:
- na pasta hbzebra tem exemplos de uso da lib hbzebra
- na pasta hbcairo tem exemplos de uso da lib hbcairo

Se não tiver no Harbour 3.2, dá uma olhada no Harbour 3.4.