0

我有一个内置在 Rails 4 (Ruby 2) 中的应用程序,当单击按钮时,它当前使用 Javascript 打开浏览器打印对话框,如下所示:

<%= button 'Print Me', :onclick => 'window.print();return false;' %>

我注意到这个对话框的左下角是一个“PDF”的下拉菜单,它有很多选项,包括“在预览中打开 PDF”、“将 PDF 另存为...”和其他一些(Safari 和 Firefox有这个,所以我认为它是行业标准)。我对在我的应用程序中使用的“邮件 PDF”选项特别感兴趣,除了已经执行的打印操作之外,是否可以使用一些 Javascript 在按钮单击时访问此功能?

理想的结果是单击“打印和电子邮件”按钮并打开一个电子邮件客户端,其中包含 PDF 格式的当前窗口的附加打印输出。

在我看来,这种事情应该可以使用 Javascript 和/或 HTML 的组合(尤其是 mailto:就像下面链接的问题),但我对 Rails 或 Javascript 不够熟悉,无法自行解决。

mailto:示例链接以打开电子邮件客户端并附加文件?

谢谢 =)

4

1 回答 1

1

不可能,您可以使用 DocRaptor 生成 PDF,也可以使用 ruby​​ gem:https ://www.ruby-toolbox.com/search?utf8=%E2%9C%93&q=pdf

很多人喜欢 Prawn,我喜欢飞碟,但它需要 jRuby。

Pdfkit 也是一个不错的选择,因为它使用与 chrome 等浏览器相同的引擎 Webkit。

https://github.com/pdfkit/pdfkit

此外,在您生成 PDF 之后,您可以使用 rails 邮件程序并将 pdf 用作附件,从而提供您正在寻找的类似电子邮件 pdf 功能。或者,您可以将文件保存为公开文件并启动包含指向您生成的 pdf 的链接的邮件。

于 2013-09-18T16:18:04.540 回答