Profesjonalny generator kodów QR

Profesjonalny online generator kodów QR, który tworzy kody bezpośrednio w Twojej przeglądarce, obsługując wiele typów treści, w tym adresy URL, tekst, Wi-Fi, vCard, SMS i e-mail. Oferuje bogate opcje personalizacji stylu, w tym kształty, style punktów pozycjonujących, kolory gradientowe, nakładki z logo, ramki i obrys. Obsługuje wyjście w formacie PNG i SVG, z funkcją pobierania i udostępniania jednym kliknięciem. Żadne dane nie są przesyłane, usługa jest całkowicie darmowa na zawsze i bez znaków wodnych. Wszystkie operacje są wykonywane lokalnie w Twojej przeglądarce, co zapewnia prywatność i bezpieczeństwo.

Zawsze darmowe Bez znaku wodnego Generowane lokalnie PNG / SVG

Generator kodów QR

Szybkie presety stylów Zastosuj jednym kliknięciem, a następnie dostosuj szczegóły w ustawieniach stylu.
Ustawienia stylu
Ramka
Ustawienia zaawansowane
Gradient
Logo
Obsługiwane tylko w trybie PNG. Obrazy są przetwarzane lokalnie i nie będą przesyłane na serwer.
logo preview
Uwaga: Style dotyczą tylko płócien PNG. Obsługa renderowania niestandardowych plików SVG zostanie dodana wkrótce.
Podgląd
Podgląd będzie aktualizowany automatycznie po wprowadzeniu lub zmianie treści i stylów.

Pobrane obrazy nie zawierają znaków wodnych, a narzędzie jest bezpłatne na zawsze.

Instrukcja obsługi

  • Wybierz typ (URL, tekst, Wi-Fi, vCard, SMS, e-mail), a następnie wprowadź lub wklej treść.
  • Dostosuj rozmiar, margines, kolory, poziom korekty błędów oraz style (kształt/punkty pozycjonujące), gradienty, logo, ramki itp.
  • Wybierz format PNG lub SVG.
  • Kod QR zostanie wygenerowany automatycznie; po jego przygotowaniu możesz go 'Pobrać' lub 'Skopiować'.
  • Przy użyciu logo lub złożonych stylów zaleca się zwiększenie poziomu korekty błędów do H oraz pozostawienie wystarczającej strefy ciszy (pustych marginesów).
  • W przypadku druku/wyświetlania upewnij się, że kontrast między pierwszym planem a tłem jest wysoki, unikaj zbyt małych rozmiarów i nadmiernego zniekształcenia.

Funkcje

  • Generowane wyłącznie po stronie klienta (bez przesyłania danych)
  • Obsługa eksportu w formatach PNG i SVG
  • Konfigurowalne style: kształt, punkty pozycjonowania, zaokrąglone rogi, odstępy
  • Gradienty (wiele kolorów, wiele kierunków)
  • Nakładka logo (opcja automatycznego zwiększenia poziomu korekcji błędów)
  • Ramki i obrysy (styl zaokrąglonej karty)
  • Udostępnianie i schowek (linki/obrazy)
  • Obsługa wielu języków i motywów

Czym są wzorce odnajdujące?

Trzy duże kwadraty w narożnikach kodu QR nazywane są wzorcami odnajdującymi. Pomagają one aparatowi szybko zlokalizować pozycję i kąt nachylenia kodu QR w celu korekcji odchyleń i dekodowania. Zazwyczaj mają strukturę modułów 7×7 (czarna ramka zewnętrzna, biała wewnętrzna i czarny środek) z naprzemiennymi kolorami czarno-białymi.

  • Funkcja: Szybkie pozycjonowanie, zapobieganie obracaniu i perspektywie.
  • Style: Narzędzie obsługuje renderowanie wzorców Finder w kwadracie, z zaokrąglonymi narożnikami oraz w stylu „kropki” (wybierz w Style → Finder).

Kto wynalazł kod QR?

Kod QR został wynaleziony w 1994 roku przez Masahiro Harę, inżyniera firmy Denso Wave w Japonii. Skrót QR oznacza „Quick Response”.

  • Motywacja do wynalazku: Zwiększenie efektywności identyfikacji na linii produkcyjnej części samochodowych oraz przełamanie ograniczeń pojemności i szybkości odczytu kodów jednowymiarowych.
  • Inspiracja projektowa: Kamienie go w kolorze czarno-białym oraz wzory macierzy inspirowały wysoce odporny design „modułów + grafiki pozycjonujące”.
  • Dlaczego nie są wymagane opłaty patentowe: Denso Wave posiada znak towarowy i niektóre patenty, ale jawnie zezwala na bezpłatne użytkowanie w celu popularyzacji ekosystemu (użytek komercyjny jest wspierany bez opłat licencyjnych).

Specyfikacje standardów i sugestie dotyczące użycia

  • Standard międzynarodowy: ISO/IEC 18004 (specyfikacja symbolu dwuwymiarowego Kod QR), który definiuje wersje, maski, korekcję błędów, struktury graficzne itp.
  • Poziom korekcji błędów: Cztery poziomy: L/M/Q/H (około 7%/15%/25%/30% odzyskiwalności). Zaleca się użycie wyższego poziomu podczas nakładania logo.
  • Zakodowana zawartość: Tekst, URL, vCard, Wi-Fi itp. Zaleca się stosowanie odpowiednich specyfikacji formatu URI/danych (np. WIFI:T:WPA;S:SSID;P:PASS;;).
  • Druk i wyświetlanie: Zapewnij kontrast między pierwszym planem a tłem oraz rozmiar strefy ciszy; unikaj nadmiernych zniekształceń, zbyt małych rozmiarów i zbyt gęstej interferencji tekstury.
  • Dostępność: W sytuacjach krytycznych zaleca się udostępnienie alternatywnego tekstu/linków, aby uniknąć polegania wyłącznie na kodzie QR jako jedynym punkcie wejścia.

Generowanie kodów QR za pomocą języków programowania

Poniżej znajdują się najprostsze przykłady w popularnych językach, odpowiednie dla początkujących i do budowy szkieletu aplikacji:

JavaScript(Node/Browser)
// 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 });
Python
# pip install qrcode[pil]
import qrcode
img = qrcode.make('https://example.com')
img.save('qrcode.png')
PHP
// 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
// 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")
}
Java
// 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"));
  }
}
Rust
// 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();
}

Uwaga: Różne biblioteki znacząco różnią się obsługą stylizacji. Jeśli potrzebujesz zaawansowanych stylów (kropki, gradienty, style wzorów pozycji, ramki itp.), możesz wygenerować obrazy PNG/SVG bezpośrednio w tym narzędziu i użyć ich.