All Categories > Tutoriales > Instalar QREncode para impresion de QR en factu
REQUISITOS

- gcc
- perl
- pcl6
- convert
- qrencode
- pcl2pdf.pl (nuevo)

INSTALACIÓN

- El gcc viene por default en la instalación. Se probó con la version 4.4.7.
- Perl también viene por default en todas las instalaciones. Pero se va a utilizar el módulo MIME::Base64. Que se encuentra por default, sino está (va a tirar un error), buscar la manera de instalarlo por yum o por cpan.

YUM
yum install perl-MIME-Base64

Si no existe el paquete

CPAN
perl -MCPAN -e shell install MIME::Base64::Perl

Si no esta instalado el CPAN

YUM - CPAN
# yum install perl-CPAN

# perl -MCPAN -e shell
cpan[1]> install MIME::Base64::Perl


- Pcl6 deberia estar instalado por su uso en el pcl2pdf.pl original, sino se instala con el paquete:


wget --no-check-certificate https://mcanet.com.ar/apps/ghostpcl_1.38p2.tgz 

cp ghostpcl_1.38p2.tgz /opt

cd /opt

tar xvfz ghostpcl_1.38p2.tgz

cd ghostpcl_1.38p1

make fonts

make pcl6 

sudo make install


- Convert, es un utilitario del paquete ImageMagick, casi siempre viene instalado, sino, se instala asi:
yum install ImageMagick


- Qrencode, se descarga de este link https://fukuchi.org/works/qrencode/qrencode-4.1.1.tar.gz y se instala:

cp qrencode-4.1.1.tar.gz /opt 

cd /opt 

tar xvfz qrencode-4.1.1.tar.gz 

cd qrencode-4.1.1 

./configure 

make 

sudo make install 

sudo ldconfig

Si en el configure les aparece un mensaje de que no encuentran la librería png (LIBPNG) como estos:

PNG ouput is disabled at compiled time

o

checking for png... no
 la instalan así:

yum install libpng-devel


- Pcl2pdf.pl, este script es una nueva versión que agrega la función DrawQR(posx,posy,SIZE,LEVEL,JSON). Y que por la complejidad del parámetro json, se debió hacer un ajuste en la lectura de parámetros de todas las otras funciones. (SetCursor, SetOrientation, DrawBMP, etc). Pero que se logró compatibilidad con el script anterior. Antes de actualizar el script, revisar las pequeñas variaciones que tienen en algunas instalaciones. (Algunas por ejemplo omitían las 2 primeras lineas del report por ejemplo) o sino directamente renombrar el filtro y/o hardcodearlo donde se va a usar.

La ultima versión se puede descargar con:
wget --no-check-certificate https://mcanet.com.ar/apps/pcl2pdf.pl

El script internamente usa un filtro de PDF hardcodeado segun la version de pcl6 instalada, a veces el driver es pdfwrite y a veces es pdfwrite2
Para saber que driver usar el pcl6 instalado basta con ejecutar:

# pcl6 --help
...
Devices: x11 bbox x11alpha x11mono x11cmyk ljet4 djet500 cljet5pr
 cljet5c bitcmyk pcxmono pcxgray pcxcmyk pswrite pdfwrite2 pxlmono pxlcolor
 bmpmono pbmraw pgmraw ppmraw jpeg bmpamono bmpa16m nullpage
Y fijarse al final de la salida en la sección Devices, aqui por ejemplo el driver es pdfwrite2

Se abre el pcl2pdf.pl y se va a la linea 48 donde se puede descomentar una opción u otra segun la instalación

#pcl6 -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=$pdf -r300 $pcl
pcl6 -dNOPAUSE -sDEVICE=pdfwrite2 -sOutputFile=$pdf -r300 $pcl
Aquí se descomentó el driver pdfwrite2 como se verificó antes.

Asegurarse de que este pcl2pdf.pl sea el que este en el PATH y tenga prioridad sobre otras versiones.



Saludos



 Last updated Fri, May 28 2021 2:46pm
Please Wait!

Please wait... it will take a second!