Ein Logo entfernt einen Teil des QR-Modulrasters. Die Fehlerkorrektur kann das in Grenzen ausgleichen, doch zu viel Gestaltung kann trotzdem einen Code ergeben, der sich nicht scannen lässt. Ironfang Render decodiert das fertige Bild und vergleicht den Inhalt vor der Auslieferung. Macht die Gestaltung oder das Logo den Code unlesbar, gibt die API 422 unscannable zurück, statt ihn auszuliefern.
Einen QR-Code im eigenen Design erstellen
Mit einem Logo wird automatisch die höchste Fehlerkorrekturstufe gewählt.
curl -X POST https://api.ironfang.uk/render/v1/qr \
-H "Authorization: Bearer if_live_..." \
-H "Content-Type: application/json" \
-d '{
"data": "https://example.com/menu",
"size": 640,
"dots": "circle",
"dark": "#1b2a4a",
"logo_url": "https://example.com/logo.png",
"logo_size": 0.22
}' --output menu-qr.pngdots akzeptiert square oder circle. eyes gestaltet die drei Positionsmarken und übernimmt standardmäßig den gewählten Punktstil. Die Positionsmarken bleiben ausgefüllt, damit ihr vorgeschriebenes Verhältnis von 1:1:3:1:1 erhalten bleibt. Die API prüft außerdem Farbpolarität und Kontrast vor dem Rendern und gibt bei ungültigen Kombinationen eine 400-Antwort zurück.
Einen Ansatz für den Dark Mode wählen
Für breite Scanner-Kompatibilität setzen Sie einen standardmäßigen QR-Code, dunkel auf hell, auf eine helle Kachel im dunklen Design. Setzen Sie invert auf true für helle Module auf dunklem Hintergrund. Moderne Handykameras lesen invertierte Codes oft, viele eingebettete und In-App-Scanner jedoch nicht; die Invertierung sollte daher auf Bildschirme beschränkt bleiben, die Sie selbst kontrollieren. Ironfang Render prüft invertierte Ausgaben vor der Auslieferung gegen ihr Negativ.
Ein Zahlungs-QR-Code auf einem Rechnungs-PDF
Jede gespeicherte Vorlage kann einen QR-Code enthalten. Fügen Sie ein Bildelement an der Stelle ein, an der der Code erscheinen soll, und übergeben Sie die QR-Spezifikation mit der Render-Anfrage.
Die Vorlage. {{qr.pay}} wird vom Render-Aufruf befüllt.
<div class="invoice-footer">
<p>Scan to pay invoice {{invoice}}</p>
<img src="{{qr.pay}}" width="150" height="150">
</div>Jeder qr-Eintrag wird gerendert, geprüft und ohne Aufpreis als Variable eingesetzt.
curl -X POST https://api.ironfang.uk/render/v1/image/YOUR_TEMPLATE_ID \
-H "Authorization: Bearer if_live_..." \
-H "Content-Type: application/json" \
-d '{
"vars": { "invoice": "INV-2041" },
"qr": { "pay": { "data": "https://pay.example.com/INV-2041", "size": 300 } }
}' --output invoice-card.png
