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.
Generator kodów QR
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:
// 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();
}
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.