在Rails中生成QR代码

7
我想在Ruby on Rails中生成QR码,以便在我的网站后台运行。看到了这个http://code.google.com/p/qrcode-rails/,但我不知道如何让它为我工作。基本上,在RoR中,我想要:
传递一个字符串给生成器,我的唯一代码是一个20个字符长度的数字(例如32032928889998887776),并生成一个名为“code”_qr.jpg的图像,保存在资源文件夹中,以便附加到我的程序发送的电子邮件中。
我该怎么做,有人知道吗?
还有,当我在问(现在得到这个答案并不那么重要),如何实现QR码读取,从网络摄像头获取该代码?谢谢。

1
这里有一个示例项目供您参考:http://qrcode-rails.googlecode.com/svn/trunk/examples/simple/ 或许您可以根据自己的需求进行修改... - Joseph Weissman
1个回答

1

如果你只需要将URL中的数据写入文件,你可以打开一个流,从文件中读取,然后将数据简单地写入磁盘--只需记得使用相同的扩展名(在这种情况下为.jpg)。

请注意,您也可以在电子邮件中发送链接(或将其作为内联图像发布到电子邮件中)。如果您真的非常想将其写入磁盘并作为附件发送到生产系统中,Ruby图像处理的一流解决方案是ruby-vips或ImageMagick。

最后,由于这是一个磁盘操作,您应该在正常的web请求周期之外执行它--你最好使用delayed_job来协助完成此操作,或者至少通过AJAX请求来触发进程。这两种方法都可以让您为操作提供进度条的优势。


谢谢你的快速回复。我对Rails还很陌生,所以我知道它可以在HTML输出中创建QR码,但我不确定如何将其保存为图像? - NickP
我实际上发现了一些非常有趣的东西: - NickP
我该如何调用以下内容并将生成的图像保存在文件夹中以便附加到电子邮件:http://chart.apis.google.com/chart?cht=qr&chs=300x300&chl='8989898'?我真的是个新手? - NickP
啊,好吧,你最好使用其他任务来完成这个操作。由于它是一个磁盘操作,你最好使用delayed_job或至少使用AJAX请求来处理该操作。你当前在页面上看到QR码了吗? - Joseph Weissman
首先请注意,您可以在电子邮件中发送链接(或将其作为内联图像发布到电子邮件中)。如果您真的想将其写入磁盘并作为附件发送,则 Ruby 图像处理的一流解决方案是 ruby-vips 或 ImageMagick。但请注意,如果您只需要将来自 URL 的数据写入文件,则可以打开流,从文件中读取,然后将数据简单地写入磁盘 - 只需记得使用相同的扩展名(在这种情况下为 .jpg)。 - Joseph Weissman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接