prawn:Prawn::Document#lazy_bounding_box

まんま

#!/usr/bin/env ruby

require "prawn"
require "prawn/layout"

pdf = Prawn::Document.new


point = [pdf.bounds.right-50, pdf.bounds.bottom + 25]
page_counter = pdf.lazy_bounding_box(point, :width => 50) do
  pdf.text "Page: #{pdf.page_count}"
end

10.times do
  pdf.start_new_page
  pdf.text "Some text"
  page_counter.draw
end

pdf.render_file(File.basename($0, ".rb") + ".pdf")