Escritura de Códigos QR en PDF para PowerBuilder 2022 R2

 


Continuando con el último ejemplo publicado:  Lector de Códigos QR en PDF para PowerBuilder 2022 R2, hoy he añadido la posibilidad de generar códigos Qr en los PDF.

Para ello he añadido 2 botones a la ventana principal del ejemplo y uno en el datawindow. En el botón del datawindow sirve para buscar de uno en uno los pdf a los que queremos incrustar la información en forma de código Qr. Como esto es un ejemplo, he creado el botón similar en la ventana para abrir directamente los todos los pdf del ejemplo para ir mas rápido con la prueba. Pero el botón realmente importante es el botón Insert Qr que es el que creará una imagen del código Qr con la información del datawindow y lo incrustará en el PDF.

Para la generación del código he creado la función of_qrgenerate(string as data) en el objeto nvo_barcodeservice para usar el objeto .Net importado nvo_rsrbarcode.

Una vez generada la imagen, he usado las nuevas funcionalidades de PowerBuilder para incrustarla en el PDF.



Para ello, intervienen 3 objetos nuevos de PowerBuilder 2022:
  1.     PDFDocumet
  2.     PDFPage
  3.     PDFImage.

Para incrustar el QR en la primera página del PDF, hay que usar el objeto PDFPage para trabajar sólo con la primera página y luego insertarla en el PDF final.

Lo que hago es básicamente importar todo el PDF original al objeto PDFDocumet y eliminar la primera página. 

Luego usando PDFPage importamos solo la primera página del PDF. 

Después hay que abrir en el objeto PDFImage la imagen del código Qr y especificar sus propiedades, tamaño, coordenadas, etc. e importar ese objeto con la función ImportContent al objeto PDFPage. 

Cuando ya tenemos lista la página la añadimos en primera posición en el objeto PDFDocument.

Finalmente sólo nos queda guardar el PDF generado donde queramos con la función Save.

Como no se si ha quedado muy clara la explicación os dejo link a la documentación oficial de appeon que habla sobre estos temas:

Building PDF documents in the application

Y como siempre os dejo el enlace de descarga de Github, qué es el mismo que el del artículo anterior, ya que simplemente he actualizado el ejemplo.

github.com/rasanfe/qrcode_pdf

PD: Recordad que para probar mis ejemplo hay que conectar con el IDE de PowerBuilder con el repositorio, ya que no subo las PBL a Github. Si no tenéis claro como hacerlo, podéis leer el artículo en el que lo explico:

Abrir un Repositorio de GitHub con PowerBuilder 2022



Comentarios