J'utilise Rails Prawn pour générer des fichiers pdf. Maintenant que je suis capable de générer pdf avec toutes les choses nécessaires dont j'ai besoin (par exemple, table, en-tête, pied de page, logo, bordures etc ...). Maintenant, je dois utiliser les choses communes (en-tête, foooter, bordures) dans une méthode dans un module séparé et appeler cette méthode de mon programme d'origine?Prawn - comment généraliser les choses communes dans le document pdf dans un module séparé pour la réutilisation de code?
Mon programme original: travel_report.rb module TravelReport
comprennent en-tête def self.generate (start_ts, end_ts, format_type, obu_ids, intervalle) Prawn :: Document.generate («public/test. pdf ") faire
frontières
page_count.times do |i|
go_to_page(i+1)
Header.border
end
en-tête et les lignes limites
page_count.times do |i|
go_to_page(i+1)
ask = "public/ashok.jpg"
image ask, :at => [15, 750], :width => 120
alert = "public/alert.jpg"
image alert, :at => [410, 740], :width => 120
end
Pied de page
page_count.times do |i|
go_to_page(i+1)
lazy_bounding_box([bounds.left+30, bounds.bottom + 20], :width => 100) {
text "Bypass Report"
}.draw
end
end
Module séparé pour le module frontières tête #class de Cheader < Prawn Document :: BoundingBox #include Prawn def self.border
pdf = Prawn::Document.new
pdf.bounding_box([5, 705], :width => 540, :height => 680) do
pdf.stroke_bounds
end
end
#end
fin
Ce code ne crée pas de Ny frontière ... Une idée de comment créer un module séparé pour cela ????