def pages
      (1..self.page_count).map do |num|
        begin
          PDF::Reader::Page.new(@objects, num, :cache => @cache)
        rescue InvalidPageError => ex
          raise MalformedPDFError, "Missing data for page: #{num}"
        end
      end
    end
def pages
      (1..self.page_count).map do |num|
        begin
          PDF::Reader::Page.new(@objects, num, :cache => @cache)
        rescue InvalidPageError => ex
          raise MalformedPDFError, "Missing data for page: #{num}"
        end
      end
    end
returns an array of PDF::Reader::Page objects, one for each
 page in the source PDF.

   reader = PDF::Reader.new("somefile.pdf")

   reader.pages.each do |page|
     puts page.fonts
     puts page.images
     puts page.text
   end

 See the docs for PDF::Reader::Page to read more about the
 methods available on each page