AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

swissqr generator

Ein Thema von dtpfl · begonnen am 27. Mär 2020 · letzter Beitrag vom 1. Apr 2020
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von dtpfl
dtpfl

Registriert seit: 19. Jan 2018
Ort: Bayern
20 Beiträge
 
Delphi 12 Athens
 
#1

swissqr generator

  Alt 27. Mär 2020, 14:18
Hallo,
ich bin derzeit auf der suche nach einer Bibliothek für Delphi 5, welche einen SWISSQR(Siehe Anhang) erzeugen kann. Am besten im Bitmap-Format.

Vielleicht hat jemand schon Erfahrung gemacht und kann mir da eine empfehlen.

Danke im Voraus!
Miniaturansicht angehängter Grafiken
swiss_qr_code_kreuz.png  
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: swissqr generator

  Alt 27. Mär 2020, 14:28
https://www.delphipraxis.net/203147-...er-delphi.html
Falls es dich nicht stört, wenn das Logo in der Mitte fehlt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
647 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: swissqr generator

  Alt 27. Mär 2020, 17:57
Hallo,
ich bin derzeit auf der suche nach einer Bibliothek für Delphi 5, welche einen SWISSQR(Siehe Anhang) erzeugen kann. Am besten im Bitmap-Format.

Vielleicht hat jemand schon Erfahrung gemacht und kann mir da eine empfehlen.

Danke im Voraus!
Siehe Link von himitsu. Das Bild in der mitte musst du aber selber formatieren und drauf platzieren. Die Komponente unterstützt das leider nicht und auf meine Bitte hat der Author der Komponentet leider nie geantwortet. Wir nutzen dafürt vorerst noch die teure HanSoft Komponente, nur ist da der Sourcecode lieder nicht dabei, was eingentlich ein NoGo ist. Auf die schnelle hatten wir aber keine andere Altenative. Die verlinkte Komponente hier im Forum, gab es zu dem Zeitpunkt, wo wir den SwissQRCode eingebaut haben, leider noch nicht.

Nur so als Info: Das CH-Kreuz kannst du einfach im Zentrum über den erzeugten QR-Code in der richtigen Grösse platzieren. Wegen der Fehlerkorrektur macht das nichts. Warum man da aber nur wegen dem doofen Kreuz den QRCode eigenlich "kaputt" machen muss, ist mir ein Rätsel. Da hat wohl einer gedacht das sei super cool, wenn es da ein CH Kreuz in der Mitte hat.

EDIT:
Habe eben gesehen, dass du was für Delphi 5 suchst. Die verlinkte Komponente benötigt aber leider eine neuere Version von Delphi, da dort Generics verwendet werden. Ob du das eventuell selber "downgraden" kannst, musst du halt schauen. Gibt noch 2-3 andere Lösungen.

Z.B. https://www.delphipraxis.net/143986-...i-zint-13.html Ob das mit Delphi 5 funktioniert, weiss ich nicht.

Geändert von Rolf Frei (27. Mär 2020 um 18:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: swissqr generator

  Alt 28. Mär 2020, 00:05
Das Bild in der mitte musst du aber selber formatieren und drauf platzieren. Die Komponente unterstützt das leider nicht und auf meine Bitte hat der Author der Komponentet leider nie geantwortet.
Da QR-Codes mit Bildern in der Mitte quasi kaputt sind und nur wegen der Fehlerkorrektur funktionieren, gilt dafür auch die freie Lizenzierung nicht. Deshalb sollte man mit solchen Ideen sehr aufpassen, wenn man nicht in eine teure Kostenfalle laufen möchte...
Frei verwendbar sind ganz explizit nur QR-Codes, die exakt dem Standard entsprechen!
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
969 Beiträge
 
Delphi 6 Professional
 
#5

AW: swissqr generator

  Alt 28. Mär 2020, 05:56
Hmm..

Schau Dir mal diese Komponente an:

https://www.delphipraxis.net/173262-...qrbarcode.html

Mit 2 Anpassungen (ReplaceText mit StringReplace getauscht, const aus der Class ins implementation verschoben) läuft diese bei mir mit Delphi 6, sollte somit dann auch bei Dir laufen.
Das Kreutz kannst Du dann als 'Overlay' Bitmap angeben und es wird in den QR-Code platziert.

Leider kann die Größe des eingefügten Bildes nicht angepasst werden, und es ist im Vergleich zum SwissQR etwas größer.
Mit Anpassungen am beigelegtem Demo konnte ich dann Mehrzeiligen Text (notwendig für die SwissQR Datenzeilen) und das Kreuz im QRCode erzeugen und unser 2D-Barcode Scanner auf der Arbeit konnte die Daten lesen...

Den angehängten QR-Code habe ich mit Mülldaten gefüllt, also nicht wundern.
Leider konnte ich das bmp nicht anhängen (trotz nur 178x178 pixel bei 5 kb Größe), somit könnte das JPG vielleicht nicht gescannt werden.


Mal sehen, ob ich Lust habe diese Komponente etwas zu überarbeiten
Miniaturansicht angehängter Grafiken
testswissqr.jpg  
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#6

AW: swissqr generator

  Alt 28. Mär 2020, 12:39
Frei verwendbar sind ganz explizit nur QR-Codes, die exakt dem Standard entsprechen!
Kaputter Code ist teurer als Funktionierender?
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
647 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: swissqr generator

  Alt 28. Mär 2020, 13:35
Diese Komponente geht nicht, da man da keine Fehlerkorrekturstufe angeben kann. Wir benötigen hier den ECC-Level "M".
Zitat:
Im Moment wird nur 8-bit-Encoding und ECC-Level H unterstützt.
Der Swiss QRCode gibt genau vor wie dieser auszusehen hat, welche Grösse, welchen Fehlerkorrektur, etc zu verwenden ist. Dass da eine CH-Kreuz in der Mitte platziert werden muss, ist leider auch vorgegeben. Siehe Kapitel 5: https://www.paymentstandards.ch/dam/...qr-bill-de.pdf

Das sind die verlangten Eckdaten:
- Fehlerkorrektur "M"
- Grösse : 46x46 mm
- Das CH-Kreuz muss genau 7x7 mm gross sein und soll den QRCode in der Mitte überlagern

Geändert von Rolf Frei (28. Mär 2020 um 13:42 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
969 Beiträge
 
Delphi 6 Professional
 
#8

AW: swissqr generator

  Alt 28. Mär 2020, 17:31
Hmm..

Das sind die verlangten Eckdaten:
- Fehlerkorrektur "M"
- Grösse : 46x46 mm
- Das CH-Kreuz muss genau 7x7 mm gross sein und soll den QRCode in der Mitte überlagern
Wer das vorgegeben hat, sollte sich mal anschauen, wie QRBarcodes funktionieren!

1. Barcodes 'wachsen', je mehr Daten damit kodiert werden müssen, somit ist eine feste Größe von 46x46 schon mal nur durch Verkleinerung erreicht werden, da die Printdarstellung nicht unbegrenzt verkleinert werden kann (Physikalische DPI des Druckers), kann der Code von Scannern irgendwann nicht mehr gelesen werden, da Punkte verschwinden.

2. Wenn das CH-Kreuz 7x7 mm groß sein muss, dann würde bei steigendem Text immer mehr Informationen 'verdeckt' werden, dass irgendwann die Fehlerkorrektur auch hier nichts mehr korrigieren kann oder der Code muss größer werden und kann die 46x46 nicht mehr einhalten, was uns dann wieder zu 1. führt.

3. Fehlerkorrektur "M" erlaubt bis zu 15% Schaden am Barcode. Fehlerkorrektur "H" sogar bis zu 30%..
Somit macht diese zwar den Barcode größer, aber erlaubt auch mehr 'Schaden'..

Bin mal gespannt, ob Du eine kostenlose Komponente findest, welche das kann..
Eventuell hast du mit ZINT eine Chance...

Da QR-Codes mit Bildern in der Mitte quasi kaputt sind und nur wegen der Fehlerkorrektur funktionieren, gilt dafür auch die freie Lizenzierung nicht. Deshalb sollte man mit solchen Ideen sehr aufpassen, wenn man nicht in eine teure Kostenfalle laufen möchte...
Frei verwendbar sind ganz explizit nur QR-Codes, die exakt dem Standard entsprechen!

Das ist wohl der Grund, wieso das SwissQRCode heißt!
Es handelt sich nicht mehr um einen originalen, Standard-QRCode...
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
647 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: swissqr generator

  Alt 30. Mär 2020, 14:19
Die haben sich da schon was überlegt und funktioniert ja so auch. Der Swiss QRCode hat maximal 970 Zeichen und damit ist auch ein "voller" QRCode mit den Vorgaben gut lesebar. Das ist also kein Problem.

Die Freeware Komponente von Redeemer sollte eigentlich problemlos nutzbar sein, da diese alle Anforderungen erfüllt. Die Fehlerkorrektur "M" kann da angeben werden. Problem für den OP ist allerdings, dass diese eben nicht D5 kompatibel ist.
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
969 Beiträge
 
Delphi 6 Professional
 
#10

AW: swissqr generator

  Alt 30. Mär 2020, 15:20
Hmm..

Hab mir die Komponente von Redeemer herunter geladen und sie mir mal (Quick&Dirty) an mein D6 angepasst (Austausch der Generics/Definition von TBytes und RawByteString/Verwenden des alten PNGObject aus dem Netz) und schon konnte ich mir die QRCodes mit D6 funktionierend generieren lassen.

Somit sollte dies wohl auch mit D5 möglich sein, da der Unterschied zu D6 noch nicht so Groß ist..

Wenn Redeemer hier mitlist, könnte er mir ja erlauben diese Änderungen zu veröffentlichen
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz