Rails: 生成大虾PDF二维码

Rails: Generate QR Code in Prawn PDF

我正在尝试生成具有不同二维码的 pdf 文档,并且我正在使用以下 gem

gem 'prawn'
gem 'prawn-qrcode'

问题是,我似乎无法使用以下方法打印出二维码:

require 'prawn/qrcode'

class QrcodePdf < Prawn::Document
  def initialize (deal)
    super()
    @deal = deal
    title
    @deal.venues.each do |venue|
      text "QR Code for: #{venue.name}"
      qrcode = RQRCode::QRCode.new(@deal.id.to_s + "_" + venue.id.to_s + "_" + @deal.created_at.to_s)
      render_qr_code(qrcode)
    end
  end

  def title
    text "Title of deal: #{@deal.title}", size: 16, style: :bold
  end
end

任何帮助将不胜感激!谢谢!

编辑:附加信息

抱歉,我忘了说明 pdf 确实正在编译中。但是 QRCode 部分是空白的。 所以它只是在循环中打印 QR Code for ... 的文本。

此外,我已经打印出@deal.id.to_s中的字符串...它确实包含我想要的数据,所以我不确定哪里出了问题。

我还在用法部分提到了 https://github.com/jabbrwcky/prawn-qrcode

这可能是 prawn-qrcode 的错误,但 render_qr_code 不起作用。至少 Ruby 2.2.3(我没有测试旧版本)。

您仍然可以使用 print_qr_code 方法并且它是有效的:

pdf = Prawn::Document.new(:page_size => "A4") do
  print_qr_code("some-text", extent: 96, stroke: false)
end