Przejdź do głównej zawartości

Logo w kodzie QR

Kod może zawierać opcjonalne logo w swoim środku – własną markę zamiast samego wzoru QR. Logo jest osadzane jako rzeczywiste piksele w pobieranych plikach SVG i PNG; pliki PDF i EPS nigdy go nie zawierają.

W Dashboardzie

Otwórz stronę szczegółów kodu. Obok podglądu kodu QR i przycisków pobierania znajduje się karta Logo w kodzie QR.

  1. Kliknij Wybierz logo i wybierz plik PNG, JPEG lub WebP (maksymalnie 1 MB – większe lub inne formaty, w tym SVG, są odrzucane jeszcze przed przesłaniem).
  2. Pojawi się podgląd wybranego pliku wraz z informacją:
    • Brak logo – dodanie logo zmieni wzór punktowy kodu. Zaznacz pole wyboru, aby potwierdzić, a następnie kliknij Prześlij logo.
    • Logo jest już ustawione – zastąpienie zmienia tylko obraz w środku, wzór pozostaje bez zmian. Kliknij Zastąp logo; potwierdzenie nie jest wymagane.
  3. Aby usunąć, kliknij Usuń logo, zaznacz ostrzegawcze pole wyboru (usunięcie również zmienia wzór) i potwierdź usunięcie po raz drugi.

Przez API

POST /v1/codes/{id}/logo – żądanie typu multipart, pole file.

Okno terminala
curl -X POST https://qr3.app/v1/codes/qr_a1b2c3d4/logo \
-H "Authorization: Bearer qr3_sk_..." \

Odpowiedź (HTTP 201): zaktualizowany kod z ustawionym logo_file_id.

Plik jest weryfikowany na podstawie jego sygnatury (magic bytes), a nie rozszerzenia czy nagłówka Content-Type. Jest on normalizowany do przezroczystego pliku PNG o wymiarach 512 × 512 px (z zachowaniem proporcji). Istniejące logo zostanie zastąpione – dla każdego kodu może istnieć tylko jedno logo.

DELETE /v1/codes/{id}/logo – bez treści (body).

Okno terminala
curl -X DELETE https://qr3.app/v1/codes/qr_a1b2c3d4/logo \
-H "Authorization: Bearer qr3_sk_..."

Odpowiedź (HTTP 200): zaktualizowany kod, logo_file_id ponownie ustawione na null. Operacja jest idempotentna – wywołanie bez istniejącego logo nadal zwraca 200 i niczego nie zmienia.

Błędy

StatusKiedy
403Rola klucza API to viewer
404Nie znaleziono kodu w przestrzeni roboczej (Workspace)
413Plik jest większy niż 1 MB
422Brak pola file lub format inny niż PNG/JPEG/WebP (w tym SVG)

Co zmienia się w kodzie

Pliki qr.svg i qr.png osadzają rzeczywiste piksele logo na środku, przeskalowane do stałej części powierzchni kodu. W tym celu oba formaty podnoszą korekcję błędów do poziomu H, aby kod pozostał skanowalny. Pliki qr.pdf i qr.eps pozostają nienaruszone przez logo – nigdy go nie osadzają i zachowują wzór, który miałyby również bez logo.

Pamięć podręczna (Cache)

Gdy logo jest ustawione, pliki qr.svg/qr.png są dostarczane z nagłówkiem Cache-Control: public, max-age=300 (5 minut) zamiast standardowego public, max-age=86400, immutable (24 godziny). Adres URL obrazu osadzony w innym miejscu – na stronie, w wiadomości e-mail, w dokumencie – uwzględni zmianę logo w ciągu maksymalnie 5 minut. Kopia, która została zapisana w pamięci podręcznej zanim kod kiedykolwiek miał logo, może potrzebować do pełnych 24 godzin, ponieważ została zbuforowana z dłuższym, niezmiennym czasem wygasania.

Druk

  • Już wydrukowany kod nadal działa, niezależnie od tego, czy logo zostanie dodane, zastąpione czy usunięte – zakodowany cel nigdy nie zależy od logo.
  • Dodanie lub usunięcie logo zmienia wzór punktowy. Jeśli samo logo ma pojawić się na materiale drukowanym, należy wydrukować kod ponownie przy użyciu aktualnego pliku qr.svg lub qr.png – nigdy nie należy mieszać starych i nowych plików do druku.
  • Zastąpienie logo nie zmienia wzoru; ponowny druk jest wtedy jedynie kwestią pożądanego nowego obrazu, a nie skanowalności.
  • Pliki qr.pdf i qr.eps nigdy nie zawierają logo. W przypadku szablonów druku, które mają pokazywać logo, należy pobrać plik qr.svg lub qr.png.
  • Przed pełnym nakładem druku należy zawsze wykonać skan próbny na rzeczywistym materiale, szczególnie po zmianie wzoru.

Powiązane tematy