Библиотека Ruby QR Code

Генерация QR-кодов на Ruby

Гем rqrcode для Ruby делает генерацию QR-кодов простой и элегантной. Идеален для Rails-приложений, скриптов и рабочих процессов автоматизации.

Установка

Установите гем rqrcode с помощью Bundler или gem install.

Gemfile
gem 'rqrcode'
gem
gem install rqrcode

Генерация QR-кодов с rqrcode

Примеры кода с использованием гема rqrcode на Ruby.

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

Генерация QR-кодов через API на Ruby

Вызовите API QRCode.fun из Ruby с помощью Net::HTTP или Faraday для стилизованных QR-кодов.

Интеграция API Ruby
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-кода

Попробуйте сгенерировать QR-код на Ruby прямо сейчас.

Предпросмотр QR

Нативная библиотека vs API

Сравните использование rqrcode с API QRCode.fun.

ФункцияГем rqrcodeQRCode.fun API
Сложность настройкиgem install + ChunkyPNG для изображенийОдин HTTP-запрос
КастомизацияЦвета, размер модуля (SVG/PNG)Полное оформление: цвета, формы, логотипы
Офлайн-поддержкаДаТребуется интернет
Обслуживаниеbundle updateВсегда актуально
Форматы выводаSVG, PNG, ANSI-терминалPNG, SVG

Сценарии использования QR-кодов в Ruby

Типичные сценарии для QR-кодов в Ruby-приложениях.

Rails-приложения

Генерируйте QR-коды в контроллерах Rails для профилей пользователей, билетов на мероприятия и настройки двухфакторной аутентификации.

Фоновые задачи

Создавайте QR-коды асинхронно с Sidekiq или Active Job для пакетной генерации этикеток и email-кампаний.

API-эндпоинты

Создавайте API-эндпоинты, возвращающие QR-коды как изображения или SVG для мобильных приложений и сторонних интеграций.

Скрипты автоматизации

Пишите Ruby-скрипты для массовой генерации QR-кодов для инвентаризации, маркировки активов и управления мероприятиями.

Часто задаваемые вопросы

Популярные вопросы о генерации QR-кодов на Ruby.

rqrcode — самый популярный и хорошо поддерживаемый Ruby-гем для генерации QR-кодов. Поддерживает SVG и PNG вывод и хорошо интегрируется с Rails.

Начните генерировать QR-коды на Ruby

Используйте наш бесплатный генератор или интегрируйте API в свои Ruby и Rails приложения.