我刚接触Ruby,并且在web应用程序中使用MVC,所以我想知道我应该把示例代码from the gem documentation放在哪里。对于我的应用程序,我正在使用Paperclip上传PDF文件,并且我希望在视图中显示PDF。我尝试将代码放在控制器中,如下所示:
require 'rubygems'
require 'open-uri'
class BooksController < ApplicationController
...
def index
io = open('http://www.cbu.edu.zm/downloads/pdf-sample.pdf')
reader = PDF::Reader.new(io)
puts reader.info
end但是当我运行它的时候,它冻结了服务器。我想知道如何将此PDF显示在视图中,以及如何使用控制台测试输出。例如,使用上面的代码,我可以在哪里看到"puts reader.info“语句的输出?
发布于 2015-11-10 18:41:36
试试,这一条:
io = open('http://www.cbu.edu.zm/downloads/pdf-sample.pdf')
reader = PDF::Reader.new(io)
reader.pages.each do |page|
puts page.fonts
puts page.text
puts page.raw_content
end根据文档,如果需要访问呈现页面的完整程序,请使用PDF::Reader::Page的walk方法
class RedGreenBlue
def set_rgb_color_for_nonstroking(r, g, b)
puts "R: #{r}, G: #{g}, B: #{b}"
end
end
io = open('http://www.cbu.edu.zm/downloads/pdf-sample.pdf')
reader = PDF::Reader.new(io)
page = reader.page(1)
receiver = RedGreenBlue.new
page.walk(receiver)发布于 2019-02-08 14:31:42
尝试使用Active Storage进行PDF上传,它有更好的文档,更容易实现,并且从5.2.2版开始就可以很好地集成到rails中。
在应用程序中启用活动存储从Rake任务开始:运行
rails active_storage:install一旦执行,它将创建两个表,活动存储需要它们来实现其承诺:active_storage_attachments和active_storage_blobs.
以下是官方文档的链接:https://github.com/rails/rails/blob/d3893ec38ec61282c2598b01a298124356d6b35a/activestorage/README.md
就这样。
我希望这对有帮助
https://stackoverflow.com/questions/33627207
复制相似问题