Geschichte & Hintergrund
Ende 2009 entstand hier und im
TUO-Repository die TZintBarcode-Komponente. Das war ein Compilat der
Zint-Bibliothek als 32bit-Windows-
DLL und die dazu passenden Delphi Wrapper-Klassen und Komponenten.
Zint ist ein C-Projekt von Robin Stuart, einem sehr netten Entwickler aus UK.
Nach einer Weile starb das original Zint-Projekt (und damit auch die Weiterentwicklung unserer Komponente) weil Robin das Projekt nicht mehr unterstützte.
Ende Mai 2012 kam wieder frischer Wind in das Zint-Projekt, auch durch den
Fork (was auch gleichzeitig der aktuelle Stand der Dinge ist) von
Ismael Luceno auf github.
Da
wir externe Abhängigkeiten(in diesem Fall die zint.dll) nicht gern haben, entschieden wir uns (nach Absprache mit Robin), den originalen C-Code nach Pascal zu übersetzen.
Dabei gelten 2 Regeln:
- So nah wie möglich am originalen C-Code bleiben, damit Bugfixes und Features möglichst einfach übernommen werden können
- So Pascal wie möglich, damit auch die FreePascal-Gemeinde (und damit möglichst viele Plattformen) etwas davon hat.
Und damit sind wir im Heute angekommen. Die Übersetzung ist vollständig erledigt und nun warten wir auf euer Feedback.
Was es ist
Dies ist eine native Pascal-Implementation der
Zint-Bibliothek zur Erstellung von verschiedenen 1D- und 2D-Barcodes.
Download
Den Code gibts per
SVN.
Lizenz
Apache License 2.0
Was im Moment geht
Zur Zeit sind folgende Codes verfügbar:
- 2of5Matrix, 2of5Industrial, 2of5Interleaved, 2of5IATA, 2of5Datalogic
- Deutsche Post Leitcode, Deutsche Post Identcode
- EAN128, Code128, Code128B, NVE18, ITF14, EAN14
- Datamatrix
- Maxicode
- Code 11, Code 39, Pharmacentral (PZN), Extended Code39, Code93
- Pharmacode, 2-Track-Pharmacode, Codabar, Code32
- Australia Post Code, Australia Post Reply Code, Australia Post Route Code, Australia Post Redirect Code
- Aztec, Azrunes
- Code16k
- Code49
- Composites: EAN128
- QR-Code, MicroQR-Code
- Gridmatrix
- Plessey, MSI-Plessey
- EAN13, EAN5, EAN2, UPCA, UPCE, ISBN
- Telepen,
- [Korea|Dutch|Japan]Post
- GS1-Databar
Folgende Rendering-Ziele werden im Moment unterstützt:
- TCanvas (Delphi, FMX, Lazarus)
- TMetafile (Delphi)
- TlmfImage (Lazarus)
- TBitmap (Delphi, FMX, Lazarus)
- SVG nativ (Delphi, FMX, Lazarus)
Was noch fehlt- Firebird-UDF (man darf doch mal träumen, oder?)
Danke für die Mitarbeit (Ideen, Bugs, ...)
Fragen, Anregungen, Issues
Falls ihr dergleichen habt, schreibt sie bitte in den
Issue-Tracker oder auch in diesen Thread (falls eine akute Google-Allergie besteht
). In der Regel sollte sich eine Lösung finden lassen.
Wünsche, die in Form einer PayPal-Zahlung ankommen, werden bevorzugt bearbeitet.
Viel Spass!