NAME
PDF::Create - create PDF files
DESCRIPTION
PDF::Create allows you to create PDF documents using a large number of primitives, and emit the result as a PDF file or stream. PDF stands for Portable Document Format.
Documents can have several pages, a table of content, an information section and many other PDF elements. More functionnalities will be added as needs arise.
Documents are constructed on the fly so the memory footprint is not tied to the size of the pages but only to their number.
It's main advantage over the other PDF modules is that it does not depend on other modules and is perl only (no compiler needed). If you want a quick and dirty way of creating pdf's, PDF::Create is for you. If you need a complete Framework to create complex PDF stuff, you better dive into the PDF::API2 based modules.
More information about this module is included in this package.
SYNOPSIS
use PDF::Create;
my $pdf = new PDF::Create('filename' => 'mypdf.pdf',
'Version' => 1.2,
'PageMode' => 'UseOutlines',
'Author' => 'Fabien Tassin',
'Title' => 'My title',
);
my $root = $pdf->new_page('MediaBox' => [ 0, 0, 612, 792 ]);
# Add a page which inherits its attributes from $root
my $page = $root->new_page;
# Prepare 2 fonts
my $f1 = $pdf->font('Subtype' => 'Type1',
'Encoding' => 'WinAnsiEncoding',
'BaseFont' => 'Helvetica');
my $f2 = $pdf->font('Subtype' => 'Type1',
'Encoding' => 'WinAnsiEncoding',
'BaseFont' => 'Helvetica-Bold');
# Prepare a Table of Content
my $toc = $pdf->new_outline('Title' => 'Document',
'Destination' => $page);
$toc->new_outline('Title' => 'Section 1');
my $s2 = $toc->new_outline('Title' => 'Section 2');
$s2->new_outline('Title' => 'Subsection 1');
$page->stringc($f2, 40, 306, 426, "PDF::Create");
$page->stringc($f1, 20, 306, 396, "version $PDF::Create::VERSION");
# Add another page
my $page2 = $root->new_page;
$page2->line(0, 0, 612, 792);
$page2->line(0, 792, 612, 0);
$toc->new_outline('Title' => 'Section 3');
$pdf->new_outline('Title' => 'Summary');
# Add something to the first page
$page->stringc($f1, 20, 306, 300,
'by Fabien Tassin <fta@oleane.net>');
# Add the missing PDF objects and a the footer then close the file
$pdf->close;
INSTALLATION
Quick answer:
perl -MCPAN -e 'install PDF::Create'
Long answer:
To install manually, cd to the directory containing the unpacked distribution and do one of the following:
perl Makefile.PL
make
make test
make install
b. To install into a private library, for example your home
perl Makefile.PL INSTALLSITELIB=$HOME/lib INSTALLMAN3DIR=$HOME/man
make
make test
make pure_install
AUTHORS
Original Author of PDF::Create
I have taken over maintenence of PDF::Create as Fabien has disappeared and did no longer maintain it in the last years. The last version of PDF::Create from Fabien is 0.06. All never versions have been modified by me.
I maintain PDF::Create in git. You can access the repository directly at http://github.com/markusb/pdf-create.