Was eine vCard enthält
Eine vCard ist reiner Text aus beschrifteten Zeilen, eingeleitet durch BEGIN:VCARD und abgeschlossen durch END:VCARD. Jede Zeile enthält eine Eigenschaft, etwa den formatierten Namen, eine Telefonnummer oder eine E-Mail-Adresse. Derselbe Text steht in einer .vcf-Datei, wenn Kontakte aus einem Smartphone oder E-Mail-Programm exportiert werden.
Eine minimale vCard 3.0 für einen QR-Code sieht so aus, eine Eigenschaft pro Zeile: BEGIN:VCARD, VERSION:3.0, N:Lee;Jordan, FN:Jordan Lee, ORG:Bäckerei Ahornstraße, TEL:+15035550123, EMAIL:jordan@example.com, URL:https://example.com, END:VCARD. N enthält den strukturierten Namen (Familienname zuerst, durch Semikola getrennt) und FN den Namen, wie er angezeigt werden soll.
- N: strukturierter Name (Familienname;Vorname;weitere Vornamen;Präfix;Suffix)
- FN: Anzeigename
- TEL: Telefonnummer, am besten im internationalen Format
- EMAIL: E-Mail-Adresse
- ORG: Firma oder Organisation
- TITLE: Berufsbezeichnung
- URL und ADR: Website und Postanschrift
Welche Version man nutzen sollte
Version 3.0 ist für QR-Codes weiterhin die sicherste Wahl, weil fast jedes Smartphone sie liest. Sie ist in RFC 2426 von 1998 definiert. Version 4.0, definiert in RFC 6350 im Jahr 2011, ist der aktuelle Standard und verlangt UTF-8, doch einige ältere Lesegeräte verarbeiten sie weniger zuverlässig.
Version 3.0 erwartet sowohl N als auch FN, während 4.0 nur FN verlangt. Welche Version man auch nutzt, die Zeile VERSION sollte direkt nach BEGIN:VCARD stehen.
Kompromisse bei Größe und Scannen
Jedes Feld, das man einer vCard hinzufügt, bringt Zeichen dazu, und mehr Zeichen bedeuten einen dichteren QR-Code mit kleineren Modulen. Eine Karte mit Name, einer Telefonnummer und einer E-Mail lässt sich schon in Visitenkartengröße leicht scannen. Eine Postanschrift, mehrere Nummern, eine lange Notiz oder ein eingebettetes Foto können den Code in eine Version schieben, die viel größer gedruckt werden muss.
Fotos sind das übliche Problem: Ein Base64-kodiertes Bild kann tausende Zeichen umfassen und passt selten in einen praxistauglichen Code. Eine übliche Alternative ist, einen Kurzlink zu einer gehosteten .vcf-Datei oder Kontaktseite zu kodieren, was den Code klein hält und spätere Änderungen der Angaben erlaubt.