Oh!Coder

Coding Life

rQRcode_png Gem简介

| Comments

今天介绍一个和rQRCode紧密相关的gem,名叫rQRCode_png。rQRCode_png扩展自qQRCode,针对QRCode实例对象添加了一个简单的to_img方法,其中生成图片的gem引用的是chunky_png

基本使用

安装

1
gem 'rqrcode_png'

Ruby中使用

1
2
3
4
5
require 'rqrcode_png'

qr = RQRCode::QRCode.new( 'my string to generate', :size => 4, :level => :h )
png = qr.to_img                 # 返回一个ChunkyPNG的实例
png.resize(90, 90).save("really_cool_qr_image.png")

Rails中使用

在Rails中使用,可以结合DragonFly这个gem一起使用。下面示意性的说明一下如何使用。

1
2
3
4
# app/models/product.rb
class Product < ActiveRecord::Base
    dragonfly_accessor :qr_code
end
1
2
3
# somewhere
qr_code_img = RQRCode::QRCode.new('http://www.google.com/', :size => 4, :level => :h).to_img
@product.update_attribute :qr_code, qr_code_img.to_string
1
2
3
4
# app/controllers/products.rb
def show
    @product = Product.find(params[:id])
end
1
2
# app/views/products/show.html.erb
<%= image_tag @product.qr_code.url %>

嗯,基本使用就是这些。看起来是不是蛮简单的?要注意的是,这个gem里又引用了两个新的gem,其中一个是Chunky PNG,是专门用来处理PNG图片的,另一个是DragonFly,是用来生成缩略图的。初看使用起来都还算是简单,以后有时间都简单介绍一下。

Comments