Skip to content

Instantly share code, notes, and snippets.

@tomascco
Created October 13, 2023 11:58
Show Gist options
  • Save tomascco/49675cf6857ad0bf17caf15490463711 to your computer and use it in GitHub Desktop.
Save tomascco/49675cf6857ad0bf17caf15490463711 to your computer and use it in GitHub Desktop.
Using ferrum to generate PDFs
require "bundler/inline"
gemfile do
source "https://rubygems.org"
gem "ferrum"
end
# URL do front a ser visitada para gerar o relatório, possívelmente com estilos CSS próprios para
# impressão, além disso é bom ter um mecanismo para que essa página só seja acessada na hora de gerar
# o relatório, aqui eu inventei um report_secret_token, que iria identificar um model de relátorio, contento
# as specs para gerar o relatório. Deixei google aqui só para exemplificar o uso.
page = "https://google.com.br" # "https://page.com/reports?report_secret_token=dasdias-ad4243-dasd-33423-dassda"
browser = Ferrum::Browser.new
browser.go_to(page)
browser.pdf(path: "output.pdf")
browser.quit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment