Text formatting issues



First and foremost thanks for all the help I've received on this
board, especially Gunnar who keeps this place running!

I've come a long way in my code and am trying to format some text and
then put it into a nice pdf file. My problem is putting the formatted
text into the pdf and for it to display correctly. I am just trying to
justify the text and then set the margins. I can put the text in the
pdf and it looks like it is trying to justify it but it won't wrap to
the next line. I've looked at the documentation for both the
Text::Autoformat and PDF::API2 modules but can't seem to figure it
out.

I have 2 questions: 1. What am I doing wrong in that the text will
appear fine when I "print" it but that it won't appear correctly in
the pdf file? 2. Also, if the text is more than 1 page, how can I get
it to automatically create a new page and continue onto the newly
created page?

My code:


#!/usr/bin/perl

use warnings;

use LWP::Simple;
use HTML::TokeParser;
use PDF::API2;
use Text::Autoformat;


# Print out the subtitle

my $oldtext = "trying to test if this sentence will be formatted the
correct way when it appears in the pdf file. For some reason I just
can't seem to get this to work. Well, maybe I can find help to get
this working. If I could get it to work it would really make my kitty
purrrr";

my $newtext = autoformat $oldtext, { left=>8, right=>70, justify =>
'full' };
print $newtext;

#----create the pdf file----->
my $file = "This PDF";
my $pdf = PDF::API2->new( -file => "$file.pdf" );
my $page = $pdf->page;
$page->mediabox ('A4');
$page->bleedbox(25,25,5,10);
$page->cropbox (7.5,7.5,97.5,120.5);
my %font = (
Helvetica => {
Bold => $pdf->corefont( 'Helvetica-Bold', -encoding =>
'latin1' ),
Roman => $pdf->corefont( 'Helvetica', -encoding =>
'latin1' ),
Italic => $pdf->corefont( 'Helvetica-Oblique', -encoding =>
'latin1' ),
},
Times => {
Bold => $pdf->corefont( 'Times-Bold', -encoding =>
'latin1' ),
Roman => $pdf->corefont( 'Times', -encoding =>
'latin1' ),
Italic => $pdf->corefont( 'Times-Italic', -encoding =>
'latin1' ),
},
);

my $main_text = $page->text;
$main_text->font( $font{'Times'}{'Roman'}, 2 );
$main_text->fillcolor('black');
$main_text->translate( 5, 100 );
$main_text->text("$newtext");

$pdf->save;
$pdf->end();

.