Differences in Windows versus Linux?

"spinningwebz2002" <spinningwebz2002-/[email protected]>
Newsgroups gmane.comp.lang.perl.modules.pdfapi2
Message-ID <[email protected]>
I have a small program that I wrote to just test soem of the features 
in pdf::api2 that, on windows XP with ActiveState perl and it creates 
a little pdf that uses the paragraph methods I mentioned in a 
different post to test adding new pages on the fly.

Now I just finished setting up a ubuntu server (linux variant) and 
installed all the apache/mysql/php and perl 5.8.x on it. I tested the 
same program and got an error I was missing Compress:Zlib - so 
installed it and ran the same program with no errors, did exactly as 
it does on the windows system (meaning it ran with no problem) and 
created a pdf, but the pdf ends up being smaller and is not a valid 
file. Here is the code I am using, is there any reason why it would 
work in windows but not in linux?

Bill H

Code starts:

use PDF::API2;

$junk = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed 
diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam 
erat, sed diam voluptua. At vero eos et accusam et justo duo dolores 
et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est 
Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur 
sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et 
dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam 
et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea 
takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor 
sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor 
invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. 
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita 
kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit 
amet.\n";
$funk = "Consetetur sadipscing elitr, sed diam nonumy eirmod tempor 
invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. 
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita 
kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit 
amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed 
diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam 
erat, sed diam voluptua. At vero eos et accusam et justo duo dolores 
et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est 
Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur 
sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et 
dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam 
et justo duo dolores et ea rebum. Stet clita.\n";

$junk = "Para 1 $junk"."Para 2 $funk"."Para 3 $junk"."Para 4 
$funk"."Para 5 $junk"."Para 6 $funk\n";

$ppi = 72;

$page_width = 5.5 * $ppi;
$page_height = 8.5 * $ppi;
$page_margin_top = .5 * $ppi;
$page_margin_bottom = .5 * $ppi;
$page_margin_left = .5 * $ppi;
$page_margin_right = .5 * $ppi;

$font_pointsize = 10;
$font_leading = 12;

$text_align = "j";

$align{'-align'} = $text_align;

$paragraph_start = "     ";

$current_line_pos = 0;

$pdf=PDF::API2->new;

$f1=$pdf->corefont('Helvetica',-encode=>'latin1');
$f2=$pdf->corefont('Helvetica-Bold',-encode=>'latin1');

$c = 0;

@parts = split(/\n/,$junk);

#&CreatePage;

foreach $thispart (@parts)
{
    $thisjunk = $thispart;
    &AddParagraph($paragraph_start.$thisjunk);
}

$pdf->saveas("thisone2.pdf");
$pdf->end();

sub AddParagraph
{
    my $thisparagraph = shift;
    while($thisparagraph ne "")
    {
        if ($current_line_pos <= $page_margin_bottom){&CreatePage;}
        $txt->translate($page_margin_left,$current_line_pos);
        $thisparagraph = $txt->paragraph($thisparagraph,$page_width - 
$page_margin_left - $page_margin_right,$font_leading,%align);
        $current_line_pos -= $font_leading;
        print "$current_line_pos --- ";
    }
}


sub CreatePage
{
    $page = $pdf->page;

#    my $photo = $page->gfx;
#    my $photo_file = $pdf->image_jpeg("watermark.jpg");
#    $photo->image( $photo_file,0,0,$page_width,$page_height);


    $page->mediabox($page_width,$page_height);
    $txt=$page->text;
    $txt->font($f1,$font_pointsize);
    $txt->lead($font_leading);
    $current_line_pos = $page_height - $page_margin_top;


}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.