La muestra usted se refiere a, desde el plugin prawnto, está utilizando una versión anterior de gambas.
Como también necesitaba encabezado y pie de página, me pareció un poco más en esto. Parece que esa versión de gambas tenía métodos de encabezado y pie de página, que se implementaron usando el cuadro de límite perezoso. (se encuentra al verificar el código en github)
En la nueva versión de gambas puede hacer lo mismo con repetidores.
Aquí está la muestra completa reescrito utilizando la nueva versión:
require "#{File.dirname(__FILE__)}/../example_helper.rb"
Prawn::Document.generate("test.pdf") do
repeat :all do
# header
bounding_box [bounds.left, bounds.top], :width => bounds.width do
font "Helvetica"
text "Here's My Fancy Header", :align => :center, :size => 25
stroke_horizontal_rule
end
# footer
bounding_box [bounds.left, bounds.bottom + 25], :width => bounds.width do
font "Helvetica"
stroke_horizontal_rule
move_down(5)
text "And here's a sexy footer", :size => 16
end
end
bounding_box([bounds.left, bounds.top - 50], :width => bounds.width, :height => bounds.height - 100) do
text "this is some flowing text " * 200
move_down(20)
font "#{Prawn::BASEDIR}/data/fonts/DejaVuSans.ttf"
table [["ὕαλον ϕαγεῖν", "baaar", "1" ],
["This is","a sample", "2" ],
["Table", "dont\ncha\nknow?", "3" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules\nwith an iron fist", "x" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ],
[ "It", "Rules", "4" ]],
:font_size => 24,
:horizontal_padding => 10,
:vertical_padding => 3,
:border_width => 2,
:position => :center,
:headers => ["Column A","Column B","#"]
end
end
se puede comprobar la página de documentación de repetición para otras opciones que le permiten especificar exactamente donde desea que los repetidores.
todavía me pregunto cómo manejar, que gambas no escribe cosas sobre sus cuadros de pie de página en este caso. Estoy usando el mismo método y simplemente no funciona. Lo mismo ocurre en tu ejemplo, cuando aumentas la cantidad de texto. Simplemente elimine el start_new_page y agregue un "* 100" a la línea de texto dentro del bucle. Por lo general, muevo todo el documento a un cuadro delimitador y restamos los tamaños de los cuadros de encabezado y pie de página para evitar problemas como ese. – unexist
Ese ejemplo de pie de página realmente me salvó horas de miseria. – Vigrant