Recent

Author Topic: Implementar codigo QR  (Read 3415 times)

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Implementar codigo QR
« on: August 24, 2021, 03:44:28 pm »
Hola compañeros, necesito ayuda, quiero poder generar una imagen QR, a partir de un codigo alfanumerico ... supongamos en una lista de miembros, acudo a su experiencia tanto en la seleccion de un componete como su uso,

La idea es cargar un miembro con sus datos, generar un codigo unico y generar la imagen QR para imprimir en un carnet, obviamente se la guarda en disco y la referencia en el registro del usuario, pero eso ya no haria falta q esté en el algoritmo de uso, aqui la cuestion es la generación del QR.

mil gracias por su ayuda!
Inculcando el software libre.
https://www.webscom.com.ar

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #1 on: August 24, 2021, 04:04:16 pm »
Hola Daragor,

Todavía no he tenido la oportunidad de probarlo, pero una búsqueda rápida en https://packages.lazarus-ide.org/, el sitio que enumera los paquetes para OPM devuelve QRCodeGenLib.

Puede instalar el paquete a través de OPM y luego probar.

Grande abraço,(Soy Portugués)
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #2 on: August 24, 2021, 04:09:49 pm »
Hola Daragor,

Este paquete ya lo usé y me dio la impresión de que tenía la posibilidad de crear códigos QR: LazBarcodes

Sin embargo, en mi vejez, la memoria me traiciona mucho y no recuerdo si la creación de códigos QR está presente.

Este paquete también está disponible en OPM.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Re: Implementar codigo QR
« Reply #3 on: August 24, 2021, 04:14:42 pm »
Gustavo gracias por tu aporte, si he visto esos paquetes, pero no los he probado aun, el tema seria alguna ayuda con el codigo implementado

en el caso de QRCodeGenLib no encuentro nada, como dije debe generar una imagen para guardarla a partir del un codigo interno.

en el caso de LazBarcodes, parece q si esta el tema de QR, pero tampoco lo he usado.
Inculcando el software libre.
https://www.webscom.com.ar

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #4 on: August 24, 2021, 04:32:50 pm »
Hola Daragor,

Dame unos minutos para crear algunos ejemplos, por favor.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #5 on: August 24, 2021, 06:01:08 pm »
Hola Daragor,

Es más fácil usar LazBarcode ya que está diseñada para usarse a través de componentes.

Me está costando darte un ejemplo con QRCodeGen porque, siguiendo el ejemplo en GitHub, tengo errores.
No dejaré que esto me impida continuar.

Adjunto tiene un ejemplo sobre cómo hacerlo con LazBarcode y continuaré con QRCodeGen hasta que pueda entender qué está fallando.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #6 on: August 24, 2021, 06:29:04 pm »
Hola Daragor,

Parece que a QRCodeGen no le gusta que se compile en trunk.

El código adjunto ahora funciona en ambas bibliotecas, siempre que no lo compile con trunk.

Voy a crear un issue en el repositorio de GitHub para alertar a Xor-El de este hecho.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Re: Implementar codigo QR
« Reply #7 on: August 24, 2021, 10:08:32 pm »
Estimado Gustavo, estuve probando el demo q me enviaste, la version 0.1 y funciona muy bien, mis consultas son:

- la imagen bmp se podria guardar en png o jpg ?
- donde encuentro documentacion oficial del lazbarcodes? para poder usar mas parametros?

 veo q es muuy simple con el complemento lazbarcodes, te agradezco mucho mucho tu colaboracion
« Last Edit: August 24, 2021, 10:23:36 pm by daragor »
Inculcando el software libre.
https://www.webscom.com.ar

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #8 on: August 25, 2021, 04:44:25 pm »
Hola Daragor,

- la imagen bmp se podria guardar en png o jpg ?

Se adjunta la versión v0.3 que ahora se puede guardar en archivos JPG y PNG.
También puede guardar en formato SVG. Esto viene por defecto en QRCodeGen pero no en LazBarcode.
Intenté implementar Save to GIF pero aparentemente no hay TFPWriterGIF, solo un lector, muy extraño.
Sin embargo, me di por vencido e implementé PNG.

- donde encuentro documentación oficial del LazBarcodes? para poder usar mas parámetros?

Puedes encontrar información en la wiki de Lazarus: https://wiki.lazarus.freepascal.org/LazBarcodes
Como puede ver, la información no es mucho de lo que implica: Use the source, Luke...

veo que es muy simple con el complemento LazBarcodes

Si bien parece más fácil usar LazBarcode, no descartaría QRCodeGen porque es más reciente y creo que está mejor mantenido.
QRCodeGen se puede usar tanto en entornos GUI como CLI, lo que lo hace un poco más poderoso, en mi opinión.
Guardar imágenes podría ser un poco menos complicado, estoy de acuerdo, pero aún así es bastante fácil de implementar una vez que comprenda cómo funciona.

te agradezco mucho mucho tu colaboración

De nada, fue un placer.

Grande abraço,
Gus
« Last Edit: August 25, 2021, 04:50:50 pm by Gustavo 'Gus' Carreno »
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Re: Implementar codigo QR
« Reply #9 on: August 25, 2021, 05:16:25 pm »
grande abrazo Gustavo! bajando la versión 0.3!

Creo q este post es un buen aporte al foro, gracias por involucrarte con el lenguaje español, saludos!
Inculcando el software libre.
https://www.webscom.com.ar

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #10 on: August 25, 2021, 05:34:01 pm »
Hola Daragor,

grande abrazo Gustavo!

Outro enorme para ti também !!!

bajando la versión 0.3!

Muy bien!!

Creo q este post es un buen aporte al foro, gracias por involucrarte con el lenguaje español, saludos!

Para ser franco, usé Google Translate por pura pereza.
Solo tuve cuidado de verificar que la traducción fuera fiel a lo que quería transmitir :)
Para nosotros portugueses es bastante fácil de entender y escribir en español, pero no estaba muy interesado en tener que confiar en mis pobres facultades de traducción ;)
Y estoy completamente de acuerdo en que esta thread es un buen ejemplo sobre códigos QR.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #11 on: August 25, 2021, 08:12:53 pm »
Hey Daragor,

No estaba satisfecho con la falta de poder guardar en GIF y decidí preguntar aquí en el foro si estaba un poco ciego porque no pasé mucho tiempo leyendo el código GIF.

El gran WP no tardó en responder: https://forum.lazarus.freepascal.org/index.php/topic,55997.msg416200.html#msg416200

Se adjunta la versión v0.4 con la posibilidad de guardar en GIF.

Esta versión necesita una biblioteca adicional porque parece que fcl-image no admite el guardado de GIF, solo la lectura.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Re: Implementar codigo QR
« Reply #12 on: August 25, 2021, 09:05:28 pm »
Wow!! jaja bien por ti Gus, es importante quitarse las dudas en este mundo de la programación, sino la cabeza no descansa.

Inculcando el software libre.
https://www.webscom.com.ar

Gustavo 'Gus' Carreno

  • Hero Member
  • *****
  • Posts: 793
  • Professional amateur ;-P
Re: Implementar codigo QR
« Reply #13 on: August 27, 2021, 12:06:09 am »
Hola Daragor,

Wow!! jaja bien por ti Gus, es importante quitarse las dudas en este mundo de la programación, sino la cabeza no descansa.

Estoy totalmente de acuerdo contigo, si no resuelves un problema tu cabeza no se detendrá !!

Con toda esta serie de ejemplos, olvidé preguntarte si querías ayuda con el contenido del código QR.

¿Sabes que puedes incluir varios formatos de información, verdad?

Desde contactos, inicio de sesión WiFi, entradas de calendario, direcciones de sitios web y muchas otras cosas.

Puedo ayudar con algunos, pero no con todos.

Grande abraço,
Gus
Lazarus 2.3.0(trunk) FPC 3.3.1(trunk) Ubuntu 21.10 64b Dark Theme
Lazarus 2.0.12(stable) FPC 3.2.2(stable) Ubuntu 21.10 64b Dark Theme
http://github.com/gcarreno

daragor

  • Jr. Member
  • **
  • Posts: 51
    • Blog Webscom
Re: Implementar codigo QR
« Reply #14 on: August 27, 2021, 10:43:25 pm »
Muchas gracias por tu disposición Gus, por ahora solamente lo usare en un sistema que necesita el código QR para un link a un sitio web y una consulta sql.

De todas maneras queda la inquitud de los ejemplos para cualquier miembro del foro Spanish que necesite de tu valiosa ayuda!

Abrazo!
Inculcando el software libre.
https://www.webscom.com.ar

 

TinyPortal © 2005-2018