我正在尝试将:root_url
参数与PDFKit
一起使用,如解析相对网址和协议部分中的https://github.com/pdfkit/pdfkit所示:
PDFKit.new(html, root_url: 'http://example.com/').to_file
我的代码:
html = Nokogiri::HTML(open("http://stackoverflow.com"))
PDFKit.new(html.to_s, root_url:'http://stackoverflow.com/').to_file(file.path)
返回wkhtmltopdf
错误Unknown long argument --root-url
。看起来wkhtmltopdf
甚至没有这样的选项,它应该由PDFKit
来解释。
有谁知道如何解决这个问题?
版本:wkhtmltopdf 0.12.4 pdfkit 0.8.2 也测试了wkhtmltopdf 0.12.3 pdfkit 0.8.0
答案 0 :(得分:2)
我得到了上述错误
我已经通过这种方式修复了
执行并复制以下命令
中的路径grep -vFxf
创建which wkhtmltopdf
:
config/initializers/pdfkit.rb
也许可以帮助你解决它
也请使用wkhtmlpdf的更新版本
根据建议的here
答案 1 :(得分:1)
wkhtmltopdf
最近报道了一些问题。而不是那样,请安装wkhtmltopdf-binary
gem&再试一次。 (无需卸载wkhtmltopdf
)
gem install wkhtmltopdf-binary
如果它不起作用,请尝试按照。
PDFKit.new('http://stackoverflow.com').to_file(file.path)
答案 2 :(得分:1)
我的解决方法是直接向HTML添加“base”标记。
require 'open-uri'
html = open("http://stackoverflow.com").read
html.gsub! "<head>", "<head><base href='http://stackoverflow.com' />"
PDFKit.new(html).to_file("/tmp/out.pdf")