【发布时间】:2012-10-07 02:36:10
【问题描述】:
我已经尝试了许多用于创建 PDF 文档的 gem,其中一些非常好用,没有太多困难。我的任务是在 PDF 文档中创建一个二维码。我在 QR 生成器和 PDF 生成器之间尝试了很多组合。虽然我在将二维码导入 PDF 文档时遇到了很多麻烦。我正在使用rqrcode gem,我喜欢它,因为它从 CSS 生成二维码,而不是图像。
我尝试过使用专门为用 Prawn 生成 QR 码而构建的 gem,但是我不断收到一条消息,说它无法识别 modules 方法。我最接近的是在我的html 文档中使用类似的结构。但这只是在没有表格的情况下使用它,这是没有用的,因为 gem 通过输出表格和 CSS 来工作。
我知道这很含糊,但由于可能的解决方案和我尝试过的不同尝试的数量,我不确定我应该提供哪些其他信息。
有什么想法吗?有没有其他人使用 Prawn 中的表格创建了带有 rqrcode gem 的二维码?
表格在视图中的外观(HTML,不是 PDF):
<table class="qr">
<% qr.modules.each_index do |x| -%>
<tr>
<% qr.modules.each_index do |y| -%>
<% if qr.dark?(x,y) -%>
<td class="black"/>
<% else -%>
<td class="white"/>
<% end -%>
<% end -%>
</tr>
<% end -%>
</table>
在.prawn.pdf file(当我尝试添加一个表格时它会中断),这是我最接近的一次。 * 和 ! 只是测试 modules method 是否有效,当我尝试将其更改为单元格背景时,它会中断。
@qr.modules.each_index do |x|
@qr.modules.each_index do |y|
if @qr.dark?(x,y)
pdf.text "!"
else
pdf.text "*"
end
end
end
宝石文件
gem 'prawn'
gem 'prawn-qrcode'
gem "rqrcode", "~> 0.4.2"
更新
我发现了一些有用的code,尽管现在我遇到的问题是 QR 码的实际大小。我希望能够把二维码做得很大。令人惊讶的是,新代码中的参数实际上并没有改变大小。实际二维码中的size 参数确实会稍微改变大小,但它实际上改变了二维码的version,这不是我想要的。
【问题讨论】:
标签: ruby-on-rails qr-code prawn