0

我正在使用 gem pdfkit(成功)生成 pdf

生成的pdf文件http ://bit.ly/MZBdmL

HTML

<h2>links</h2>
<p>
<a href="http://google.com" title="">google.com</a>
</p>
<p>
<a href="http://github.com">github</a>
</p>
<p>
<br>
</p>
<p>
<a href="http://google.sk" title="">http://google.com</a>
<br>
</p>

我是否缺少pdfkitwkhtmltopdf中的某些选项?

wkhtmltopdf version 0.9.9
pdfkit gem version  0.5.2

我生成pdf的方式:

class DocumentController < ApplicationController

  def download
    @document = Document.last  #just example
    #...
    kit = PDFKit.new(@document.content.html_safe, :page_size => 'Letter')
    kit.stylesheets << "#{Rails.root}/app/assets/stylesheets/pdf.css"
    send_data kit.to_pdf, :filename => "#{@document.title}.pdf", :type => 'application/pdf'
  end
end

-------------------------------------------------- --------------------------

解决方案:

正如@Nenotlep 在下面的回答中所建议的那样,解决方案是重新安装 wkhtmltopdf。我之前的版本来自 Ubuntu 源(懒惰的 Synaptic 安装)。

所以我从官方网站http://code.google.com/p/wkhtmltopdf/downloads/list下载了 wkhtmltopdf-0.11.0_rc1-static-amd64.tar.bz2(i386,如果你不在 64 位平台上)并解压到

 ~/.rvm/gems/ruby-1.9.3-p194@my_project_gemset/bin 

所以你会得到可执行的

 ~/.rvm/gems/ruby-1.9.3-p194@my_project_gemset/bin/wkhtmltopdf

重启服务器并完成

注意 1 wkhtmltopdf手册建议将 wkhtmltopdf 静态文件放置在我的 $PATH 指向的任何位置。我试图把它放在 /usr/locale/bin 但这不起作用。如您所见,我使用 RVM。该文件必须在特定的 gemset bin 文件夹中

笔记2

下载页面上还有 wkhtmltoimage 的文件。不要像我一样愚蠢地安装它并想知道它为什么不起作用:)

4

1 回答 1

1

我建议立即尝试手动安装 wkhtmltopdf,就像它在pdfkit 主页的安装部分中所说的那样。这样您将获得最新版本的 wkhtmltopdf (0.11.0 rc2),它可能会解决许多问题。(虽然变更日志似乎没有列出这个问题,所以它可能无法解决这里的任何问题。)

与 wkhtmltopdf 问题一样,真正有助于解决问题的一步是在命令行中手动进行转换,这样您就可以确保问题出在 wkhtmltopdf 而不是包装器上,而且您可以获得更好的反馈你在做。

对不起,这不是直接回答你的问题。

于 2012-08-14T13:37:08.430 回答