Ruby QRコードライブラリ

RubyでQRコードを生成

Rubyのrqrcode gemはQRコード生成をシンプルかつエレガントにします。Railsアプリケーション、スクリプト、自動化ワークフローに最適です。

インストール

Bundlerまたはgem installを使用してrqrcode gemをインストールします。

Gemfile
gem 'rqrcode'
gem
gem install rqrcode

rqrcodeでQRコードを生成

Rubyでrqrcode gemを使用したコード例。

QR Code as SVG

require 'rqrcode'

qr = RQRCode::QRCode.new('https://qrcode.fun')

svg = qr.as_svg(
  offset: 0,
  color: '1A2B3C',
  shape_rendering: 'crispEdges',
  module_size: 6,
  standalone: true
)

File.write('qrcode.svg', svg)

QR Code as PNG

require 'rqrcode'

qr = RQRCode::QRCode.new('https://qrcode.fun')

png = qr.as_png(
  bit_depth: 1,
  border_modules: 4,
  color_mode: ChunkyPNG::COLOR_GRAYSCALE,
  color: 'black',
  file: nil,
  fill: 'white',
  module_px_size: 6,
  resize_exactly_to: false,
  resize_gte_to: false,
  size: 300
)

IO.binwrite('qrcode.png', png.to_s)

Rails Controller

class QrCodesController < ApplicationController
  def show
    qr = RQRCode::QRCode.new(params[:data] || 'https://qrcode.fun')
    svg = qr.as_svg(module_size: 6, standalone: true)

    render inline: svg, content_type: 'image/svg+xml'
  end
end
QRCode.fun API

RubyでAPIを使ってQRコードを生成

Net::HTTPまたはFaradayを使用してRubyからQRCode.fun APIを呼び出し、スタイル付きQRコードを生成します。

Ruby API連携
require 'net/http'
require 'json'

uri = URI('https://qrcode.fun/api/generate-qr-styled')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request.body = {
  data: 'https://qrcode.fun',
  width: 300,
  height: 300,
  type: 'png',
  margin: 10,
  dotsOptions: { color: '#1A2B3C', type: 'rounded' },
  cornersSquareOptions: { color: '#8564C3', type: 'extra-rounded' },
  backgroundOptions: { color: '#FFFFFF' }
}.to_json

response = http.request(request)
result = JSON.parse(response.body)
puts result['data'][0..49]

QRコードライブプレビュー

今すぐRubyでQRコードを生成してみましょう。

QRプレビュー

ネイティブライブラリ vs API

rqrcodeとQRCode.fun APIの比較。

機能rqrcode GemQRCode.fun API
セットアップの複雑さgem install + 画像用ChunkyPNG単一のHTTPリクエスト
カスタマイズカラー、モジュールサイズ(SVG/PNG)フルスタイリング:カラー、シェイプ、ロゴ
オフラインサポートはいインターネット接続が必要
メンテナンスbundle update常に最新
出力形式SVG, PNG, ANSIターミナルPNG, SVG

Ruby QRコードの使用例

RubyアプリケーションでのQRコードの一般的なシナリオ。

Railsアプリケーション

RailsコントローラーでユーザープロフィールやイベントチケットQRコードと二要素認証設定を生成します。

バックグラウンドジョブ

SidekiqやActive Jobを使用して非同期でQRコードを作成し、バッチラベル生成やメールキャンペーンに使用します。

APIエンドポイント

モバイルアプリやサードパーティ統合向けにQRコードを画像またはSVGとして返すAPIエンドポイントを構築します。

自動化スクリプト

在庫、資産タグ付け、イベント管理用にQRコードを一括生成するRubyスクリプトを作成します。

Ruby QRコードエコシステム徹底解説

Rubyのエレガントな構文とRailsエコシステムにより、QRコード生成がシンプルかつ生産的になります。

Rails コントローラー、ビューと Active Storage

rqrcodeで生成し、SVG/PNG形式で配信します。Active Storageをモデルの添付ファイルとして使用します。フラグメントキャッシュで重複生成を回避します。Hotwire/Turboで動的更新を実現します。

Sidekiq バックグラウンド処理

大量生成をSidekiq workersにオフロードします。バッチ機能で追跡します。SHA256キーによるRedisキャッシュで重複を防止します。

Gem エコシステム:rqrcode、ChunkyPNG、MiniMagick

rqrcodeがマトリクスを生成し、ChunkyPNGがImageMagickなしでPNGをレンダリングします。MiniMagickでロゴやグラデーションを追加します。ビルトインSVGレンダラーでレスポンシブデザインに対応します。

よくある質問

RubyでのQRコード生成に関する一般的な質問。

rqrcodeが最も人気があり、メンテナンスの行き届いたRuby QRコードgemです。SVGとPNG出力をサポートし、Railsと良好に統合されます。

他の言語のQRコードライブラリを探す

お好みのプログラミング言語のQRコード生成ガイドとコード例をご覧ください。

RubyでQRコード生成を始めましょう

無料のジェネレーターを使用するか、APIをRubyとRailsアプリケーションに統合しましょう。