1

在 Rails 应用程序中阅读 PDF。

我的应用程序在RAILS 4,我想在我的应用程序中阅读 PDF。我不想下载 PDF。我上传 PDF 并在我的应用程序中查看。

这怎么可能或我该怎么做?

请帮帮我...

提前致谢

4

3 回答 3

2

使用 PDF 阅读器 gem。 https://github.com/yob/pdf-reader。它允许您通过 URL 在网络上阅读。

例如:

def count_words_in_pdf_file(filepath)
    io = filepath.start_with?('http') ? open(filepath) : filepath
    reader = PDF::Reader.new(io)
    total_count = 0
    if reader
      reader.pages.each do |page|
        total_count += count_words_in_text(page.text)
      end
    end
    total_count
end
于 2013-09-13T06:05:55.257 回答
0

你可以使用send_data方法

def view_pdf
  File.open("path/to/pdf", 'rb') do |f|
    send_data f.read, :type => "application/pdf", :disposition => "inline"
  end
end

但是用户的浏览器无论如何都可以覆盖和下载pdf。

如果你想强制查看 pdf,你可以使用 mozilla 创建的 pdf.js

https://github.com/mozilla/pdf.js

于 2013-09-13T09:49:26.230 回答
0

如果我理解正确,您想向用户展示 PDF。

作为一种解决方案,您可以使用FancyBox2在框架中显示 PDF:

<a class="fancybox" data-fancybox-type="iframe" href="http://samplepdf.com/sample.pdf">Test pdf</a>

$(".fancybox").fancybox({
    openEffect  : 'none',
    closeEffect : 'none',
    iframe : {
        preload: false
    }
});

http://jsfiddle.net/RHaAX/

于 2013-09-13T06:08:14.840 回答