13 de enero de 2011

Códigos de Barras QR usando la API de Google

Un pequeño ejemplo de como utilizar la API de Google para generar códigos de barras de dos dimensiones de tipo QR:

** Este seria el contenido de informacion del QR
lcDato =[?re=XAXX010101000%26rr=XAXX010101000%26tt=1234567890.123456] + ;
  [%26id=ad662d33-6934-459c-a128-BDf0393f0f44]
** Ancho x Alto
lcDimensiones = '300x300'
** Donde quieren guardar la imagen, ojo, es PNG
lcImagen = PUTFILE('QRCode','QRCode','png')

IF EMPTY(lcImagen)
  RETURN
ENDIF

IF GoogleQR(lcDato,lcDimensiones,lcImagen) == 0
  MESSAGEBOX('Descarga Exitosa',0+64,'GoogleQR')
ELSE
  MESSAGEBOX('Error en la generacion del Codigo QR',0+16,'GoogleQR')
ENDIF

FUNCTION GoogleQR(pDato,pDimensiones,pImagen)
  WAIT WINDOW "Generando y descargando Código QR, espere por favor..." NOWAIT
  DECLARE LONG URLDownloadToFile IN "urlmon";
    LONG pCaller,;
    STRING szURL,;
    STRING szFileName,;
    LONG dwReserved,;
    LONG lpfnCB
  sURL ="https://chart.googleapis.com/chart?cht=qr&chs=" + ;
    pDimensiones + "&chld=Q&chl=" + STRTRAN(pDato,'&','%26')
  nRetVal = URLDownloadToFile (0, sURL, pImagen, 0, 0)
  WAIT CLEAR
  RETURN nRetVal
ENDFUNC
Más información:
Google API
Gracias a Luis María Guayán por el tip de esta API de Google
Baltazar Moreno

No hay comentarios. :

Publicar un comentario