ruby-on-rails-3 – Rails,Prawn – PDF显示在浏览器等中

前端之家收集整理的这篇文章主要介绍了ruby-on-rails-3 – Rails,Prawn – PDF显示在浏览器等中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Fellas,我正在努力掌握对虾的pdf宝石.

好的,我远离主人lvl.我能够生成一个pdf. gemfile中的每个宝石都包括

gem 'MysqL','~> 2.8.1'
gem 'prawn','~> 0.12.0'
gem 'pdf-reader','~> 0.10.0'
gem 'Ascii85','~> 1.0.1'

在config / application.rb中:

config.autoload_paths << "#{Rails.root}/app/reports"

比控制器:

require 'prawn'

 def index
  pdf = Prawn::Document.new
  pdf.text "Hello World"
  pdf.render_file "x.pdf"
 end

比我调用索引函数.名为x.pdf的PDF在我的应用程序的根目录中创建.在gemfile中,rakefile和config.ru.

题:

>如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件
>如何使该操作在浏览器窗口中生成文件,不保存?
>如何使其保存并显示在浏览器窗口中?

你的,凯尔

解决方法

如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件
def index
  pdf = Prawn::Document.new
  pdf.text "Hello World"
  pdf.render_file File.join(Rails.root,"app/report","x.pdf")
end

如何在浏览器窗口中生成文件,不保存?

def index
  pdf = Prawn::Document.new
  pdf.text "Hello World"
  send_data pdf.render,:filename => "x.pdf",:type => "application/pdf"
end

如何保存并显示在浏览器窗口中?

def index
  pdf = Prawn::Document.new
  pdf.text "Hello World"
  filename = File.join(Rails.root,"x.pdf")
  pdf.render_file filename
  send_file filename,:type => "application/pdf"
end

猜你在找的Ruby相关文章