QR-Code-Kapazität und Fehlerkorrektur
Diese Abfrage zur QR-Code-Kapazität und Fehlerkorrektur liefert die maximale Zeichenzahl im numerischen, alphanumerischen und Byte-Modus für eine gewählte Version und Korrekturstufe von QR Code Model 2.
Im Browser ausführen – kostenlos
Sie deckt alle Standardversionen von 1 bis 40 sowie die Stufen L, M, Q und H ab. Damit können Sie Nutzlastgrenzen vor der Erzeugung vergleichen, eine passende Symbolgröße wählen oder nachvollziehen, warum derselbe Inhalt bei einer Korrekturstufe passt und bei einer anderen nicht.
Wählen Sie zuerst Version und Korrekturstufe
Die QR-Code-Version bestimmt die Abmessungen des Symbols: Version 1 beginnt mit 21 mal 21 Modulen, und jede weitere Version ergänzt bis Version 40 auf jeder Seite vier Module. Mehr Module schaffen mehr Platz, doch die Fehlerkorrekturstufe reserviert einen Teil davon für Wiederherstellungsdaten. Stufe L lässt die größte Nutzlastkapazität übrig, während M, Q und H zunehmend mehr Codewörter für die Korrektur vorsehen. Diese Abfrage behandelt beide Angaben als feste Ausgangswerte und liefert drei nützliche Höchstwerte. Wählen Sie eine ganze Version von 1 bis 40 und einen der vier Standardbuchstaben. Das Ergebnis enthält die normalisierte Stufe, die verfügbare Anzahl an Datencodewörtern und die maximale Zeichenzahl für jeden unterstützten Modus. Der Inhalt wird nicht untersucht und eine Version wird nicht automatisch gewählt. Dadurch bleibt die Antwort vorhersehbar, wenn Sie eine Spezifikation prüfen, eine andere QR-Bibliothek validieren oder mögliche Konfigurationen vor dem Kodieren vergleichen. Eine unbekannte Version oder Stufe wird abgelehnt und weder gerundet noch stillschweigend ersetzt.
Warum der Kodierungsmodus die Kapazität verändert
Die drei Kapazitäten unterscheiden sich, weil QR-Modi Zeichen mit verschiedenen Bitraten packen. Der numerische Modus speichert Ziffern in kompakten Gruppen und erreicht daher die höchste Zeichenzahl, ist jedoch auf die Ziffern null bis neun beschränkt. Der alphanumerische Modus verwendet das begrenzte QR-Alphabet mit 45 Zeichen, darunter Großbuchstaben, Ziffern, Leerzeichen und einige Satzzeichen. Der Byte-Modus speichert Einheiten zu acht Bit und ist die praktische Referenz für allgemeinen Text oder Binärdaten; deshalb ist sein Höchstwert niedriger. Die Berechnung beginnt mit den nach der Fehlerkorrektur verfügbaren Datencodewörtern, zieht den vier Bit langen Modusindikator und das versionsabhängige Zeichenzählfeld ab und sucht die größte passende Nutzlast. Der Byte-Wert zählt Bytes, nicht sichtbare Schriftzeichen. In UTF-8 können Akzente, nichtlateinische Schriften und Emojis mehrere Bytes belegen. Ein realer Encoder kann außerdem Modi wechseln, einen ECI-Indikator ergänzen oder Metadaten aufnehmen. Liegt der Inhalt an der Grenze, sollten Sie daher seinen genauen Bitstrom vergleichen.
Nutzen Sie das Ergebnis ohne Lesegarantie
Die Kapazität ist eine feste Speichergrenze für den gewählten Modus, die Version und die Korrekturstufe; sie garantiert nicht, dass ein gedrucktes oder angezeigtes Symbol zuverlässig gelesen wird. Physische Modulgröße, Ruhezone, Kontrast, Fokus, Oberflächenverformung, Druckfehler und Kamerabedingungen bleiben entscheidend. Messen Sie die Nutzlast zunächst in der richtigen Einheit und stellen Sie sicher, dass sie den zurückgegebenen Höchstwert nicht überschreitet. Andernfalls können Sie eine größere Version wählen, bei geeigneter Umgebung die Korrekturstufe senken, die Nutzlast kürzen oder einen dichteren passenden Modus verwenden. Passt sie nur exakt bis zur Grenze, testen Sie den produktiv eingesetzten Encoder und die Lesegeräte, da Modusköpfe oder zusätzliche Segmente das endgültige Bitbudget verändern können. Eine höhere Korrektur hilft bei Etiketten, die Kratzern oder Verdeckung ausgesetzt sind, verringert ohne ein größeres Symbol aber die Kapazität und kann bei fester Druckgröße kleinere Module erzeugen. Jeder API-Aufruf kostet $0.002; das deterministische Ergebnis eignet sich für reproduzierbare Validierungen, Dokumentation und Build-Prüfungen.
Anwendungsfälle
Nutzlastgrenzen validieren
Lehnen Sie Inhalte ab, die nicht in die von einer Produktspezifikation verlangte Version, Korrekturstufe und Kodierung passen.
QR-Konfigurationen vergleichen
Vergleichen Sie die Kapazität von L, M, Q und H, bevor Sie die Symbolgröße festlegen.
Integrationsgrenzen dokumentieren
Veröffentlichen Sie genaue numerische, alphanumerische und Byte-Grenzen für ein Gerät, Etikett oder Encoder-Verfahren.
Häufige Fragen
Welche QR-Versionen werden unterstützt?
Unterstützt werden alle Versionen von QR Code Model 2 von 1 bis 40.
Welche Fehlerkorrekturstufen kann ich verwenden?
Verwenden Sie L, M, Q oder H. Die Abfrage lehnt jede unbekannte Stufe ab.
Entspricht die Byte-Kapazität der Zeichenzahl?
Nur wenn jedes Zeichen ein Byte belegt. UTF-8-Zeichen können mehrere Bytes benötigen; messen Sie daher die kodierte Bytelänge.
Warum senkt eine stärkere Fehlerkorrektur die Kapazität?
Mehr Codewörter werden für Wiederherstellungsinformationen reserviert, sodass weniger für die Nutzlast verbleiben.
Enthält der Höchstwert den Modus-Overhead?
Ja. Die Berechnung berücksichtigt den vier Bit langen Modusindikator und das versionsabhängige Zeichenzählfeld.
Was kostet ein API-Aufruf?
Jeder API-Aufruf kostet $0.002. Die Berechnung ist deterministisch und nutzt keine externen Dienste.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"version":10,"level":"Q"}'const res = await fetch("https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"version": 10,
"level": "Q"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"version": 10,
"level": "Q"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"version":10,"level":"Q"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"version":10,"level":"Q"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"version": 10,
"level": "Q"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "doc.qr_code_error_correction_capacity",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 200 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |