Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Count pages of PDF file

by bimleshsharma (Beadle)
on Jul 05, 2011 at 06:19 UTC ( #912757=perlquestion: print w/ replies, xml ) Need Help??
bimleshsharma has asked for the wisdom of the Perl Monks concerning the following question:

How to count pages of PDF file?.

Comment on Count pages of PDF file
Re: Count pages of PDF file
by bimleshsharma (Beadle) on Jul 05, 2011 at 06:23 UTC

    We can do like this..

    use PDF::API2;
    foreach $doc (@ARGV)
    {
    $pdf = PDF::API2->open($doc);
    $pages = $pdf->pages;
    $totalpages += $pages;
    print "$doc contains $pages pages\n";
    }
    print "Total pages of pdf pages = $totalpages\n";
Re: Count pages of PDF file
by ambrus (Abbot) on Jul 05, 2011 at 06:47 UTC

    Install xpdf. Run the pdfinfo utility on the pdf you want. Read its output. It has a line like Pages: 150 which should give you the number of pages.

Re: Count pages of PDF file
by davido (Archbishop) on Jul 05, 2011 at 08:38 UTC

    That's about the only easy thing you can do with a PDF (aside from unlink()). Here's how to get a page count.

    use PDF::API2; my $pdf = PDF::API2->open( 'yourfile.pdf' ); my $count = $pdf->pages(); print "O frabjous day! The PDF has $count pages. Callooh! Callay!\n";

    PDF::API2

    Update: Well, in my excitement, having just done some painful work with PDF's a few days ago, I jumped on an answer, not realizing that you (the OP) followed up to your own node with a mostly similar solution. ...except that yours keeps a running total of total pages across multiple PDF files. I didn't see that need in the original question. But now I'm wondering what just happened here: If you already know the answer why did you post the question to Seekers of Perl Wisdom. Is there something more you would like us to add to your solution? :)


    Dave

Re: Count pages of PDF file
by Anonymous Monk on Jul 05, 2011 at 10:35 UTC
Re: Count pages of PDF file
by chrestomanci (Priest) on Jul 05, 2011 at 20:00 UTC

    You could install pdftk for your platform and then use:

    pdftk <filename> dump_data

    It will emit 11 lines of metadata about the file. The last item is the page count.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (10)
As of 2014-09-17 06:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

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











    Results (62 votes), past polls