Ayudaaaa.
Me muestra en Pantalla pero no se como grabar a un bmp o jpg
#include "fivewin.ch"
function main()
local oWnd
define window oWnd
activate window oWnd on paint( BarCode( hDC ) )
return nil
function BarCode( hDC )
local hZebra
local cCode := "20219719443 | 01 | F001 | 00045256 | 25/01/2018 | 18.00 | 118.00 | 6 | 10087302682 |"
local hBrush := CreateSolidBrush( 0 )
hZebra := hb_zebra_create_qrcode( cCode, NIL )
hb_zebra_draw( hZebra, {| x, y, w, h | FillRect( hDC, { y, x, y + h, x + w }, hBrush ) }, 5, 5, 4, 4 )
deleteobject( hBrush )
hb_zebra_destroy( hZebra )
return nil
Como grabar un codiigo en qr a un Archivo BMP
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Como grabar un codiigo en qr a un Archivo BMP
oWnd:SaveToBmp( "mycode.bmp" )
Re: Como grabar un codiigo en qr a un Archivo BMP
Hola Antonio Gracias x responder..
Me graba la pantalla.
Lo que quiero saber es como grabar solo el codigo de QR que se crea.
para utilizar en mi facturacion electronica.
Me graba la pantalla.
Lo que quiero saber es como grabar solo el codigo de QR que se crea.
para utilizar en mi facturacion electronica.
Re: Como grabar un codiigo en qr a un Archivo BMP
João Santos - São Paulo - Brasil
Re: Como grabar un codiigo en qr a un Archivo BMP
Hola Karina excelente tu aporte.
Sabes ise la prueba y va muy bien pero funciona solo con internet.
En el ejemplo que dejo utilizo la liberia hbzebra de harbour, lo cual me permite crear codigo ilimitados de qr pdf437 etc.
El problema es si ya esta creado el brush como convertirlo en archivo bmp y luego grabarlo.
de antemano muy agradecido...
Sabes ise la prueba y va muy bien pero funciona solo con internet.
En el ejemplo que dejo utilizo la liberia hbzebra de harbour, lo cual me permite crear codigo ilimitados de qr pdf437 etc.
El problema es si ya esta creado el brush como convertirlo en archivo bmp y luego grabarlo.
de antemano muy agradecido...
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Como grabar un codiigo en qr a un Archivo BMP
Dioni,
Cambia el tamaño de la ventana con:
oWnd:SetSize( 164, 185 )
antes de llamar a:
oWnd:SaveToBmp( "mycode.bmp" )
Cambia el tamaño de la ventana con:
oWnd:SetSize( 164, 185 )
antes de llamar a:
oWnd:SaveToBmp( "mycode.bmp" )
Re: Como grabar un codiigo en qr a un Archivo BMP
Dioni, además de probar lo que te dice Antonio, que es simple y sencillo, puedes probar esto
Code: Select all
#include "fivewin.ch"
Static oFontText
Static oWnd
Static lPaint := .T.
Static hZebra
Static hBrush
Static nWidth := 0
Static nHeight := 0
//----------------------------------------------------------------------------//
Function Main()
DEFINE FONT oFontText NAME "Calibri" SIZE 0, -11
DEFINE WINDOW oWnd FROM 10, 10 TO 700, 700 PIXEL MENU MyMenu()
ACTIVATE WINDOW oWnd ON PAINT BarCode()
RELEASE FONT oFontText
DeleteObject( hBrush )
hb_Zebra_Destroy( hZebra )
return nil
//----------------------------------------------------------------------------//
Function MyMenu()
local oMenu
MENU oMenu
MENUITEM "Actions"
MENU
MENUITEM "Save" ACTION SaveCode()
SEPARATOR
MENUITEM "Exit" ACTION oWnd:End()
ENDMENU
ENDMENU
Return oMenu
//----------------------------------------------------------------------------//
function BarCode()
local nX := 18
local nY := 18
local hFont
local cCode := "20219719443 | 01 | F001 | 00045256 | 25/01/2018 | 18.00 | 118.00 | 6 | 10087302682 |"
if Empty( hBrush )
hBrush := CreateSolidBrush( 0 )
hZebra := hb_Zebra_Create_Qrcode( cCode, NIL )
hb_zebra_draw( hZebra, { | x, y, w, h | nWidth := x + w, nHeight := y + h, ;
FillRect( oWnd:hDC, { y, x, y + h, x + w }, hBrush ) }, nX, nY, 11, 11 )
oFontText:Activate( oWnd:hDC )
DrawText( oWnd:hDC, cCode, { nHeight + 10 , nX - 4, nHeight + 24, nWidth + 4 }, 0 )
oFontText:DeActivate( oWnd:hDC )
endif
return nil
//----------------------------------------------------------------------------//
Function SaveCode()
local oBmp
local hGraf
local hBmp
local hBrush1 := GdiPlusNewSolidBrush( 255, 255, 255, 255 )
local hBrush2 := GdiPlusNewSolidBrush( 255, 0, 0, 0 )
oBmp := GdiBmp():New()
hBmp := GdiPlusBmpFromBrush( nWidth + 18, nHeight + 18, hBrush1 )
hGraf := GdiPlusHGraFFromHBmp( hBmp )
hb_zebra_draw( hZebra, { | x, y, w, h | GdiPlusDrawRect( hGraf, , hBrush2, x, y, w, h ) }, 18, 18, 11, 11 )
oBmp:hBmp := hBmp
GdiPlusDeleteGraphics( hGraf )
GdiPlusDeleteBrush( hBrush2 )
GdiPlusDeleteBrush( hBrush1 )
oBmp:Save( "Code1.png" )
oBmp:End()
Return nil
//----------------------------------------------------------------------------//
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: Como grabar un codiigo en qr a un Archivo BMP (Listo)
Gracias MAESTRO CNAVARRO con tu aporte, pude concluir mi factura.
Re: Como grabar un codiigo en qr a un Archivo BMP
No olvidar a nuestro querido compañero Manuel ( mastintin ) que nos ha abierto este fascinante mundillo del GDIPLUS
http://forums.fivetechsupport.com/viewt ... ra#p205397
http://forums.fivetechsupport.com/viewt ... ra#p205397
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.