Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

How to rotate images in PDF:API2 module?

by vasanthgk91 (Sexton)
on Nov 29, 2012 at 13:48 UTC ( #1006255=perlquestion: print w/ replies, xml ) Need Help??
vasanthgk91 has asked for the wisdom of the Perl Monks concerning the following question:

#!/usr/bin/perl use PDF::API2; my $img1="../first.gif"; my $pdffile="../sample.pdf"; my $pdf = PDF::API2->new( -file => "$pdffile" ); my $page1 = $pdf->page; $page1->mediabox('A4'); my $photo1 = $page1->gfx; my $photo_file1 = $pdf->image_gif($img1); $photo1->image( $photo_file1,50,360,510,250); $photo1 ->rotate(90) $pdf->saveas($pdffile); $pdf->end();

This code generate normal pdf image. I need Vertical position image...I need to rotate this image...like 45,90 degree... $photo1->image( $photo_file1,50,360,510,250);...That rotate attributes where i need to give

There is no rotation happen for me...Same page downloaded for me

Comment on How to rotate images in PDF:API2 module?
Download Code
Re: How to rotate images in PDF:API2 module?
by tobyink (Abbot) on Nov 29, 2012 at 13:52 UTC

    Probably just create a rotated copy of the GIF file and insert that instead. Image::Magick should be able to rotate a GIF pretty easily.

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
Re: How to rotate images in PDF:API2 module?
by tobyink (Abbot) on Nov 29, 2012 at 14:02 UTC

    Also, according to PDF::API2::Content it looks like $photo1->rotate(90) should work.

    (I've not really used PDF::API2 much, and when I have it's mostly been via PDF::API2::Simple, so I can't vouch for the reliability of its documentation. But usually when documentation says you can do something, you probably can.)

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
Re: How to rotate images in PDF:API2 module?
by snoopy (Deacon) on Nov 30, 2012 at 08:09 UTC
    I'd rotate the graphics before-hand and restore afterwards:
    #!/usr/bin/perl use PDF::API2; my $img1="../first.gif"; my $pdffile="../sample.pdf"; my $pdf = PDF::API2->new( -file => "$pdffile" ); my $page1 = $pdf->page; $page1->mediabox('A4'); my $photo1 = $page1->gfx; my $photo_file1 = $pdf->image_gif($img1); $photo1->save; $photo1->transform( -rotate => 45, -translate => [my $_x = 100, my $_y = 50], ); $photo1->image( $photo_file1,50,360,510,250); $photo1->restore; $pdf->saveas($pdffile); $pdf->end();
    There's likely to also be some translation involved depending on what corner you want to pivot from.

      Thank u very much...It's works fine..

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1006255]
Approved by tobyink
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2014-09-21 19:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (175 votes), past polls