Generando pdf con Perl + PDF::Report

Perl PDF

Aprende a generar un archivo PDF directamente programando con el lenguaje de programación Perl. Comienza a crear fichas y repores PDF.

Usando el modulo de cpan PDF::Report de Perl para generar pdf, si usan Debian, Canaima o algún derivado debería bastar con:
#aptitude install libpdf-report-perl
Para probar el script crean un archivo con extensión .pl y copian el código.

Luego en consola: leninmhs@one:~/perl$perl pdf.pl
ó: leninmhs@one:~/perl$./pdf.pl

Se realizo énfasis en asignar las propiedades del pdf generado (autor, fecha, creador, etc..) y añadir imágenes y algo de texto dentro del pdf a generar.
La documentación oficial de PDF::Report

 

Perl PDF

Código cortesía de la casa hecho en Linux (Debian Squeeze):

 

 
#!/usr/bin/perl -w 
# aptitude install libpdf-report-perl 

use PDF::Report;

my $pdf = new PDF::Report( PageSize => 'A4', PageOrientation =>'Portrait');
my %hash_info = ( Author => "Leninmhs - Lenin Hernandez", Creator => "Perl v5.10.1", Subject =>"Practica Perl + PDF::Report ", Title => "Practica Perl + PDF::Report", CreationDate =>"D:20110703112700");

$pdf->setInfo(%hash_info);
$pdf->newpage(1);
$pdf->setFont('Helvetica-bold');
$pdf->setSize(16);

my ($width, $height) = $pdf->getPageDimensions();

$pdf->addImg( "banner.png" , 20, $height-40);
$pdf->centerString(0, $width, $height-80, "Reporte con PDF::Report en Perl");
$pdf->setFont('Helvetica');
$pdf->setSize(12); 

my $whatis = "Perl es un lenguaje de programación disenado por Larry Wall en 1987. Toma características del lenguaje C, del lenguaje interpretado shell (sh), AWK, sed, Lisp."; 

my $defecto = "Perl esta instalado por defecto en las distribuciones mas populares de GNU/Linux como Debian, Slackware, Mandriva, Gentoo, RedHat y SUSE."; 

my $lema = "Perl es un gran e insidioso mal perpetrado por hábiles pero pervertidos profesionales"; 
my $lema2 = "Lema Perl: Hay mas de una forma de hacerlo."; 

$pdf->addParagraph( $whatis, 30, $height-130, $width-60, 30, 25, 10);
$pdf->addParagraph( $defecto, 30, $height-180, $width-60, 20, 25, 10);
$pdf->addParagraph( $lema, 30, $height-250, $width-60, 20, 25, 10);
$pdf->addParagraph( $lema2, 30, $height-290, $width-60, 20, 25, 10); 
$pdf->addImg( "perl_mula.jpg" , 400, $height-420);

open(PDF, "> leninmhs.pdf") or die "ERROR: No puedo escribir en leninmhs.pdf: $!\n"; 

print PDF $pdf->Finish();
close(PDF);
exit;

Con ese código nos queda algo así:

PDF GENERADO CON PERL

Ver todas las publicaciones de Perl

Si te gusto o sirvió para lo que necesitabas compártelo en tus redes para que alguien mas también tenga la oportunidad.

También te podría gustar...

2 Respuestas

  1. con este PDF::Report se pueden hacer cuadros? es decir, necesito un reporte parecido. Pero que como tal despues del titulo centrado, este una tabla de 2×2 que diga cantidad de articulos y el resultado y en la de abajo cantidad de clientes y resultado. Espero me puedas ayudar.

    • leninmhs dice:

      Hola claro esta librería permite hacer todo lo que necesites. En el caso de hacer cuadros me parece que toda librería para generar pdfs te permitirá hacer cuadros revisa la documentación de la librería que estés usando actualmente. Saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *