Професійний генератор QR-кодів
Професійний онлайн генератор QR-кодів, що створює їх локально у вашому браузері, підтримує кілька типів вмісту, включаючи URL, текст, Wi-Fi, vCard, SMS та електронну пошту. Пропонує широкі можливості налаштування стилю: форми, стилі позиційних точок, градієнтні кольори, накладання логотипу, рамки та контури. Підтримує виведення у формати PNG та SVG, має функції завантаження та поширення одним натисканням. Дані не завантажуються, повністю безкоштовний назавжди та без водяних знаків. Всі операції виконуються локально у вашому браузері, що забезпечує конфіденційність та безпеку.
Генератор QR-кодів
Завантажені зображення без водяних знаків, інструмент можна використовувати безкоштовно назавжди.
Інструкції з використання
- Оберіть тип (URL, текст, Wi-Fi, vCard, SMS, електронна пошта), після чого введіть або вставте вміст.
- Налаштуйте розмір, поле, колір, рівень корекції помилок, а також стилі (форма/позиційні точки), градієнти, логотипи, рамки тощо.
- Оберіть формат PNG або SVG.
- QR-код згенерується автоматично; після готовності ви можете його 'Завантажити' або 'Копіювати'.
- При використанні логотипу або складних стилів рекомендується підвищити рівень корекції помилок до H та залишити достатні тихі зони (порожні поля).
- При використанні для друку/відображення забезпечте високу контрастність між переднім планом та фоном, а також уникайте надто малих розмірів та надмірного спотворення.
Можливості
- Згенеровано виключно на клієнтському боці (немає завантаження)
- Підтримує виведення в формати PNG та SVG
- Настроювані стилі: форма, точки позиціювання, заокруглення, прогалини
- Градієнти (кілька кольорів, кілька напрямків)
- Накладення логотипу (опція автоматичного підвищення рівня корекції помилок)
- Рамки та обводи (стиль заокругленої картки)
- Поширення та буфер обміну (посилання/зображення)
- Підтримка кількох мов та тем
Що таке шаблони пошуку?
Три великі квадрати на чотирьох кутах QR-коду називають шаблонами пошуку, які допомагають камері швидко знайти позицію та кут QR-коду для корекції зсуву та декодування. Зазвичай вони мають структуру модулів 7×7 (чорний зовні, білий всередині та чорний в центрі) з чергуванням чорного та білого кольорів.
- Функція: Швидке позиціонування, боротьба з обертанням та перспективою.
- Стилі: Цей інструмент підтримує відображення шаблонів Finder у формі квадратів, фігур із заокругленими кутами та "крапкових стилів" (оберіть у меню Стиль → Finder).
Хто винайшов QR-код?
QR-код був винайдений у 1994 році Масахіро Хара, інженером компанії Denso Wave в Японії. QR розшифровується як "Quick Response".
- Мотивація винаходу: Покращити ефективність ідентифікації на виробничих лініях автомобільних деталей та подолати обмеження ємності та швидкості зчитування одномірних кодів.
- Натхнення для дизайну: Чорно-білі фігури Go та матричні візерунки надихнули на створення надійної конструкції «модулі + позиціонування».
- Чому не потрібна патентна плата: Denso Wave володіє торговою маркою та частиною патентів, але явно дозволяє безкоштовне використання для популяризації екосистеми (комерційне використання можливе без ліцензійних платежів).
Стандартні специфікації та рекомендації щодо використання
- Міжнародний стандарт: ISO/IEC 18004 (специфікація двовимірних символів QR Code), який визначає версії, маски, корекцію помилок, графічні структури тощо.
- Рівень корекції помилок: Чотири рівні: L/M/Q/H (приблизно 7%/15%/25%/30% відновлюваних даних). Рекомендується використовувати вищий рівень при накладанні Логотипу.
- Закодований вміст: Текст, URL, vCard, Wi-Fi тощо. Рекомендується дотримуватися відповідних специфікацій URI/формату даних (наприклад,
WIFI:T:WPA;S:SSID;P:PASS;;). - Друк та відображення: Забезпечте контраст між переднім та заднім планом, а також розмір "тихої зони"; уникайте надмірного спотворення, занадто малих розмірів та надто щільної текстурної інтерференції.
- Доступність: У критичних ситуаціях радимо надавати альтернативний текст/посилання, щоб не використовувати QR-код як єдиний вхід.
Генерація QR-кодів за допомогою мов програмування
Нижче наведено найпростіші приклади на поширених мовах, підходять для початківців та створення базової структури:
// Node: npm i qrcode
const QRCode = require('qrcode');
QRCode.toFile('qrcode.png', 'https://example.com', { errorCorrectionLevel: 'M' });
// Browser (Canvas):
// <script src="https://cdn.jsdelivr.net/npm/[email protected]/lib/browser.min.js"></script>
QRCode.toCanvas(document.getElementById('canvas'), 'Hello QR', { width: 256 });
# pip install qrcode[pil]
import qrcode
img = qrcode.make('https://example.com')
img.save('qrcode.png')
// composer require endroid/qr-code
use Endroid\QrCode\QrCode;
use Endroid\QrCode\Writer\PngWriter;
$qr = QrCode::create('https://example.com');
$writer = new PngWriter();
$result = $writer->write($qr);
$result->saveToFile(__DIR__.'/qrcode.png');
// go get -u github.com/skip2/go-qrcode
package main
import "github.com/skip2/go-qrcode"
func main() {
qrcode.WriteFile("https://example.com", qrcode.Medium, 256, "qrcode.png")
}
// Maven: com.google.zxing:core, com.google.zxing:javase
// Minimal ZXing example
import com.google.zxing.BarcodeFormat;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class Main {
public static void main(String[] args) throws Exception {
QRCodeWriter writer = new QRCodeWriter();
BitMatrix matrix = writer.encode("https://example.com", BarcodeFormat.QR_CODE, 256, 256);
BufferedImage image = MatrixToImageWriter.toBufferedImage(matrix);
ImageIO.write(image, "png", new File("qrcode.png"));
}
}
// Cargo.toml
// qrcode = "0.13"
// image = "0.24"
use qrcode::QrCode;
use image::Luma;
fn main() {
let code = QrCode::new("https://example.com").unwrap();
let image = code.render<Luma<u8>>().min_dimensions(256, 256).build();
image.save("qrcode.png").unwrap();
}
Примітка: Різні бібліотеки істотно відрізняються за можливостями стилізації. Якщо вам потрібні просунуті стилі (точки, градієнти, стилі шаблонів пошуку, рамки тощо), ви можете генерувати PNG/SVG безпосередньо в цьому інструменті та використовувати їх.