Scan me

In dem Blog-Beitrag Erzeugen von Barcodes haben wir bereits den Barcodegenerator in Form des PrtBarcode-Objekts vorgestellt. Der heutige Artikel hat den Quick Response Code (QR-Code) zum Thema. Im Nachfolgenden möchten wir auf einige Verwendungsmöglichkeiten eingehen und aufzeigen, welche Daten dem PrtBarcode-Objekt übergeben werden müssen, um einen validen QR-Code zu erhalten.

Geschichte

Entwickelt wurde der QR-Code 1994 in Japan von der Toyota-Tochter “Denso” für die Kennzeichnung von Bauteilen in der Automobilindustrie.

Aufbau / Merkmale

Der QR-Code gehört zur Gruppe der Matrix-Codes. Der QR-Code verfügt im Vergleich zu anderen Barcodes eine hohe Speicherkapazität und kann bis zu 4296 Zeichen aufnehmen. Zusätzlich arbeitet der Code mit einer Fehlerkorrektur, so dass auch bis zu einem gewissen Grad an Verschmutzung oder Beschädigung, der Code lesbar bleibt.

Verbreitung

Ursprünglich für die Fertigungs- und Logistikbranche entwickelt, begegnet einem der QR-Code in den verschiedensten Lebensbereichen. Insbesondere durch die rasante Verbreitung der Smartphones, ist der QR einer der am häufigsten verwendeten Codes.

Einsatzbereiche

Das Anwendungsspektrum ist sehr vielfältig. Es reicht von einer einfachen Weiterleitung auf eine Website bis hin zum Bezahlen von Produkten und Dienstleistungen. Exemplarisch möchten wir drei Anwendungen vorstellen.

Weiterleiten auf eine Website
Die wohl einfachste Anwendung ist das Codieren einer Web-Adresse im QR-Code. Hierzu wird die URL an die Caption-Eigenschaft des PrtBarcode-Objekts übergeben. Damit der QR-Reader die Information nicht lediglich als Nachricht sondern als Website interpretiert, muss die URL inklusive http:// bzw. https:// definiert werden.

// Druckjob öffnen
tJob # PrtJobOpen('QRCode', '', _PrtJobOpenWrite | _PrtJobOpenTemp);
if (tJob > 0)
{
  tDoc # tJob->PrtInfo(_PrtDoc);
  // PrtBarcode-Objekt ermitteln
  tBCode # tDoc->PrtSearch('PrtBarcode');
  // Fehlerkorrektur auf Level Q setzen
  tBCode->ppCorrectionLevel # 2;
  // Barcodetyp QR verwenden
  tbCode->ppTypeBarcode # _WinBarcode2dQRCode;
  // URL definieren
  tBCode->ppCaption # 'http://www.vectorsoft.de/Blog';
  ...
  ...
}
http://www.vectorsoft.de/Blog

Wie bereits erwähnt, verwendet der QR-Code einen Korrektur-Level. Insgesamt existieren vier solcher Level:

Level L: maximal 7 Prozent Fehlerkorrektur
Level M: maximal 15 Prozent Fehlerkorrektur
Level Q: maximal 25 Prozent Fehlerkorrektur
Level H: maximal 30 Prozent Fehlerkorrektur

Die Prozentangabe sagt aus, dass die Daten auch dann noch rekonstruiert werden können, wenn die Daten des Codes bis zu dem definierten Wert beschädigt bzw. nicht lesbar sind.

Im obigen Beispiel wird mit Hilfe der Eigenschaft ppCorrectionLevel
den Korrektur-Level des QR-Codes auf “Q” gesetzt. Diesen haben wir gewählt, da der Barcode von einem Bild überdeckt wird und somit Bereiche des Codes nicht gelesen werden können.

Ab der kommenden conzept 16-Version 5.7.09 ist die Angabe des gewünschten Fehlerkorrektur-Levels über die Eigenschaft ppCorrectionLevel möglich.
QR-Code auf der Visitenkarte
Im nachfolgenden Beispiel werden Kontaktdaten im vCard-Format gespeichert. Bei vCard handelt es sich um ein standardisiertes Dateiformat zum Speichern und Austauschen von Kontaktdaten. Durch Scannen des Codes lassen sich die Daten in das Telefonbuch des Mobiltelefons übertragen.

tBcode->ppCaption # 'BEGIN:VCARD'
         + sCRLF  + 'VERSION:3.0'
         + sCRLF  + 'N:Schramm;Andreas'
         + sCRLF  + 'FN:Andreas Schramm'
         + sCRLF  + 'ORG:vectorsoft AG'
         + sCRLF  + 'TEL;WORK;VOICE:+49 6104 660-300'
         + sCRLF  + 'EMAIL:'
         + sCRLF  + 'END:VCARD';
Kontaktdaten im vCard-Format

Bezahlen von Rechnungen per GiroCode
Bei dem GiroCode handelt es sich um einen QR-Code, welcher alle notwendigen Überweisungsdaten wie BIC, IBAN, Empfänger etc. enthält. Mit einer entsprechenden Banking-App lassen sich die die Daten automatisch in das Überweisungsformular übertragen.

// Korrektur-Level M
tBCode->ppCorrectionLevel # 1;
tBCode->ppCaption # 'BCD'                         // Servicekennung
          + sCRLF + '001'                         // Version
          + sCRLF + '1'                           // Kodierung
          + sCRLF + 'SCT'                         // Funktion
          + sCRLF + 'HELADEF1OFF'                 // BIC
          + sCRLF + 'Müller, Jakob'               // Name
          + sCRLF + 'DE12505500200999999999'      // IBAN
          + sCRLF + 'EUR50';                      // Betrag
GiroCode
Weiterführende Informationen zu vCard und GiroCode:

Klicken Sie hier, um die Nutzungsbedingungen für unseren Blog zu lesen.

2 Antworten

  1. @Th.Eichele
    Standardmäßig verwendet der QR-Code den Level L (7%). Das ist auch ab der Version 5.7.09 der Fall, wenn kein Korrektur-Level angegeben ist.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Leave the field below empty!

Wünsche, Fragen oder Feedback sind willkommen:

Nutzungsbedingungen der Kommentarfunktion im Blog

1. Allgemeines

Vectorsoft AG („Anbieter“) stellt für Internetnutzer („Nutzer“) auf der Website
vectorsoft.de einen öffentlichen Blog bereit. Der öffentliche Blog dient dem
Informations- und Gedankenaustausch. Die Nutzer, welche sich mit Beiträgen und
Kommentaren beteiligen, verpflichten sich dazu, die Blog-Nutzungsbedingungen
einzuhalten und tragen die Verantwortung für die Richtigkeit und Angemessenheit
sowie Freiheit von Rechtsverletzungen ihrer Beiträge. Mit Nutzung der
Kommentarfunktion in unserem Blog akzeptieren Sie diese Nutzungsbedingungen.

2. Netiquette

Wir bitten Sie von persönlichen Angriffen und Provokationen aufgrund anderer
Meinungen abzusehen. Bitte argumentieren Sie sachlich und bewegen Sie sich auf
der Basis einer konstruktiven Diskussionskultur. Ihr Kommentar sollte stets im
Zusammenhang mit dem jeweiligen Thema sein, um Ausschweifungen in andere
Themenbereiche zu vermeiden. Das mehrmalige Posten desselben Kommentars
oder mehrerer ähnlicher Kommentare ist nicht erlaubt.

3. Verbot rechtswidriger Inhalte

Mit Absenden Ihres Kommentars bestätigen Sie, dass Sie keine Urheberrechte oder andere Rechte Dritter verletzen. Volksverhetzende, rassistische Äußerungen, Anleitungen zu Straftaten und deren Verherrlichung, Gewaltdarstellungen, pornografische Inhalte und Äußerungen, die Persönlichkeitsrechte verletzen sind untersagt.

4. Keine Werbung

Die Nutzung der Kommentarfunktion ist für kommerzielle oder parteipolitische
Zwecke nicht erlaubt. Werbliche Beiträge aller Art werden von uns umgehend
gelöscht.

5. Angaben zum Namen

Bei der Eingabe Ihres Namens achten Sie auf die zuvor genannten Grundsätze.

6. Quellenangaben

Bitte geben Sie bei der beabsichtigten Veröffentlichung von Zitaten oder Beiträgen
Dritter die jeweiligen Quellen an und erläutern dessen Bezug zum Blogbeitrag.

7. Verstoß gegen die Nutzungsbedingungen

Beiträge, die gegen diese Richtlinie verstoßen werden umgehend gelöscht. Sollten
Sie selbst Verstöße bemerken, so senden Sie uns bitte den Link des betreffenden
Kommentars per E-Mail an . Wir weisen ausdrücklich daraufhin, dass wir einzelne Nutzer bei wiederholten oder schweren Verstößen gegen diese
Nutzungsbedingungen ausschließen werden.

Stand: Sept. 2024

Deine Trial Version - jetzt anfordern!

Teste yeet - unverbindlich und kostenfrei

IHRE EVALUIERUNGSLIZENZ - JETZT ANFORDERN!

TESTEN SIE DIE CONZEPT 16 VOLLVERSION - UNVERBINDLICH und KOSTENFREI

Melden Sie sich bei unserem Newsletter an

Anrede*
     
Zustimmung zur Datenverarbeitung gem. DSGVO*



WordPress Cookie-Hinweis von Real Cookie Banner