![]() |
[Bibliothek] Barcode für Delphi (Zint)
Liste der Anhänge anzeigen (Anzahl: 1)
Geschichte & Hintergrund
Ende 2009 entstand hier und im ![]() ![]() 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 ![]() ![]() Da ![]() Dabei gelten 2 Regeln:
Was es ist Dies ist eine native Pascal-Implementation der ![]() Download Den Code gibts per SVN. Lizenz Apache License 2.0 Was im Moment geht Zur Zeit sind folgende Codes verfügbar:
Was noch fehlt
Danke für die Mitarbeit (Ideen, Bugs, ...) Fragen, Anregungen, Issues Falls ihr dergleichen habt, schreibt sie bitte in den ![]() Wünsche, die in Form einer PayPal-Zahlung ankommen, werden bevorzugt bearbeitet. :stupid: Viel Spass! |
Re: [Komponente] Barcode für Delphi (Zint)
SUPER! :cheer:
|
Re: [Komponente] Barcode für Delphi (Zint)
Man sollte aber beachten das diese Komponente nur in GPL Projekten genutzt werden darf. Denn zInit steht unter der GPLv3. Daher müssen alle abgeleiteten und darauf aufbauenden Projekte unter der GPLv3 stehen.
|
Re: [Komponente] Barcode für Delphi (Zint)
Joa ... für den Moment stimmt das.
Aber glücklicherweise denkt Robin (der Chef-Entwickler von Zint) gerade darüber nach, die Lizenz auf LGPL zu ändern. Somit kann man die zint.dll dann in jedem beliebigen Projekt benutzen. Schaut also ab und zu mal auf die Zint-Website. :) |
AW: [Komponente] Barcode für Delphi (Zint)
Moin Forum,
ich habe mir das Programm eben mal runtergeladen und installiert. Aber es gibt nur ein Programm im Startmenü, wo finde ich denn die Komponente unter Delphi oder eine DLL die man benutzen kann? Gruß Oliver |
AW: [Komponente] Barcode für Delphi (Zint)
Du musst das/die Package(s) in Delphi Öffen und diese Installieren
|
AW: [Komponente] Barcode für Delphi (Zint)
Wo finde ich denn die Packages?
Im Programmverzeichnis C:\Programme\Zint finde ich nur drei Dateien(exe). Keine Packages oder pas-dateien oder so. |
AW: [Komponente] Barcode für Delphi (Zint)
Du hast auch nicht dei Komponente, sonder das Programm (Studio) heruntergeladen
![]() |
AW: [Komponente] Barcode für Delphi (Zint)
Ok, klappt, danke :)
|
AW: [Komponente] Barcode für Delphi (Zint)
Ich stelle mich sicher nur zu dumm an, aber wo versteckt sich hier die Komponente für Delphi XE?
![]() Ich konnte ich keiner der pas-Dateien eine Register-Prozedur finden. |
AW: [Komponente] Barcode für Delphi (Zint)
|
AW: [Komponente] Barcode für Delphi (Zint)
Ich stelle mich sicher nur zu dumm an, aber wo versteckt sich hier die Komponente für Delphi XE?
![]() Ich konnte ich keiner der pas-Dateien eine Register-Prozedur finden. |
AW: [Komponente] Barcode für Delphi (Zint)
War dein letzter Post ein Ausrutscher oder Ernst?
Wenn er ernst gemeint war, dann ![]() Ansonsten hab ich dir einen 140er/XE Ordner reingebaut. |
AW: [Komponente] Barcode für Delphi (Zint)
Da ich grad selbst nach Barcode-Kompos suche bin ich auf diesen Thread gestoßen. Ich möchte nur zum Thema GPLv3 etwas anmerken: Selbst wenn Zint unter der GPLv3 steht, so ist es hier zur zint.dll kompiliert, die Delphi-Komponenten nutzen nur die DLL und implementieren nicht selbst Quellcodes aus dem Projekt Zint. Daher müssen Projekte, welche die zint.dll benutzen, nicht zwingend unter der GPLv3 stehen. Andernfalls müßte ja auch jedes Bild das mit Gimp erstellt wurde, unter der GPL stehen. Oder die Ausführung einer unter der GPL stehenden .EXE würde das gesamte Windows-Betriebssystem unter die GPL zwingen. Das ist Mumpitz.
Die Diskussion gabs schon hunderte Male im Netz. Letztendlich ist die Lesart der GPL so, dass die Verwendung und Weiterentwicklung von Quellcodes die "Infektionalität" der GPL bewirkt. Diese endet dann jedoch bei Kompilaten wie DLLs. Um allen Missverständnissen vorzubeugen, sollte man den Lizenztexten der eigenen Software einen Hinweis zur Verwendung der unter der GPLv3 stehenden zint.dll hinzufügen und einen Link zu den Quellcodes der zint.dll mit angeben. Dann hat man der GPLv3 in jedem Fall Genüge getan. |
AW: [Komponente/Bibliothek] Barcode für Delphi (Zint)
Update 30.07.13: es wird noch besser! :-)
Nachdem das originale Zint-Projekt eine Weile tot war, lebt es jetzt wieder und auch Pascal-Liebhaber sollen etwas davon haben. Deshalb arbeiten wir gerade an einer Pascalübersetzung des Zint-C-Codes um dann später Barcodes aus Delphi/Freepascal/Lazarus nativ zu generieren. Zur Zeit (nach 2 Tagen Arbeit) funktionieren schon mal 2of5-Matrix und Code128. Dafür wird wahrscheinlich die alte Komponente sterben müssen. Aber was solls ... shi*** happens :-D Mal sehen wie es weiter läuft. Und falls ihr irgendwelche Anregungen habt: immer her damit ... wir lesen sie auf jeden Fall. ;) |
AW: [Komponente/Bibliothek] Barcode für Delphi (Zint)
Hm. Gut. Nur leider GPL und damit z.B. nicht verwendbar in Anwendungen, die nicht GPL sind.
Codehunter verwechselt in seiner Aussage oben wohl die GPL mit der LGPL. Ein Hinweise auf der Webseite zu zint klingt ein wenig danach, als ob zint.dll freier sein sollte. "Only the contained backend (aka ZINT shared library) is licensed under BSD 3." Im wichtigen Sourcecode und den Lizenz-Files sehe ich aber überall nur GPL. Konkrete Frage: Wenn jemand zint verwendet um für z.B. FastReports fehlende Barcodes zu erzeugen ist das wohl Lizenztechnisch unmöglich?! (FastReports gibts vermutlich nicht als GPL?) |
AW: [Komponente/Bibliothek] Barcode für Delphi (Zint)
Ich versuch mal, diese Lizenz-Diskussion zu beenden:
Auf Nachfrage bei Robin Stuart (dem Entwickler von Zint) schrieb er: Zitat:
Der Pascal-Code wird letztendlich unter der DWYWBDBU-Lizenz (do what you want, but dont blame us) rauskommen, womit alle Einsatzmöglichkeiten offen sind. |
AW: [Komponente] Barcode für Delphi (Zint)
Update 06.08.13: Erste Erfolge
Bis jetzt läufts ganz gut. Im Moment kann man folgenden Codes erstellen (getestet mit XE2 und Lazarus):
Wer es ausprobieren will ist im ![]() Demnächst wird es dann auch mindestens eine Komponente zur einfachen Verwendung geben. |
AW: [Komponente] Barcode für Delphi (Zint)
Wenn ich einen Wunsch äußern dürfte: Codabar wäre für mich ganz interessant und die Kompilierbarkeit für 64 Bit. Bei einem Projekt setze ich eine uralte Komponente ein, die in Pixeleinheiten auf Canvas zeichnet. Das ist äußerst lästig wenn man die Barcodes zu Papier bringen will. Man muss erst umständlich die Druckerauflösung ermitteln und dann Pixel in Millimeter umrechnen. Daher wäre es sehr wünschenswert, wenn die Komponente die Berechnung selbst vornehmen könnte wenn man ihr einen dpi-Wert sowie Höhe und Breite in mm vorgibt.
|
AW: [Komponente] Barcode für Delphi (Zint)
Codabar ist kein Problem, das ist seit dem letzten Commit (gestern) dabei.
x64 ist bisher theoretisch und praktisch kein Problem. Ein bißchen stolper ich noch über die Sache mit dem Drucken. (das kann aber auch daran liegen, das ich bei diesem Thema nicht ganz fit bin) Im Moment kommt als Resultat ein Bitmap heraus, das man dann auf die beliebige Größe skalieren kann (bei 2D natürlich nur proportional). Reicht das? Btw: Update 08.08.13: Nach der Zähmung der Azteken, gehts munter weiter Neben einer simplen Demo sind folgende Codes jetzt hinzugekommen:
|
AW: [Komponente] Barcode für Delphi (Zint)
Zitat:
Meiner Erfahrung nach muss ein breiter Strich nur deutlich breiter sein als ein schmaler Strich, gleiches gilt für die Lücken. Dann lassen sich Barcodes auch frei skalieren. Der Korrektheit halber würde ich dir einen "Strikt-Mode" empfehlen, bei dem sich dein Code verhält wie oben beschrieben (standardkonform) und eine Art "Quirks-Mode", der frei skalieren kann. Hat hier jemand Erfahrungen damit, wie man Vektordaten erzeugt und an den Drucker schickt? Delphi kapselt den Printer ja als Canvas-Objekt, daher geht wohl alles als Bitmap rüber. Wenn man sich aber z.B. mal einen A4-Etikettenbogen vorstellt, denn man mit Barcodes bedrucken will, dann ist das (ja nach physischer Auflösung des Druckers) schon ein verdammt großes Bitmap. Bei meinem HP LaserJet 4050 sind das pro A4-Seite schon 25 MB. Spaßeshalber habe ich so ein Bitmap mal durch den Vectorizer von Corel Draw gejagt und dann zum Drucker: Siehe da, ca. 280 kB Daten. Für die Druckgeschwindigkeit bei Multipage-Ausdrucken ist die Datenmenge nicht zu unterschätzen. Besonders auffallend ist das dann, wenn der Drucker über sehr wenig RAM verfügt und der Treiber alles in kleinen Häppchen während des laufenden Druckauftrages "nachreichen" muss. |
AW: [Komponente] Barcode für Delphi (Zint)
Das wird eine wirklich gute Komponente und "fast" genau was ich suche.
Es wäre PERFEKT wenn es dann auch unter dem Firemonkey Framework (FMX) laufen würde.. ;-) |
AW: [Komponente] Barcode für Delphi (Zint)
Was das Rendern angeht, bin ich im Moment noch nicht ganz so glücklich. Aktuell ist es nur eine Adaption des originalen Render-to-PNG Codes. Vielleicht werden wir da noch mal was anderes bauen müssen (eventuell in Richtung EMF oder so). Aber dazu muss ich mich erst mal um ein paar Grafik-Basics kümmern.
Zitat:
|
AW: [Bibliothek] Barcode für Delphi (Zint)
Mit FMX meint er den großen Wurf von Emba, das Framework für Win iOS und Android.
|
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
|
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
Sehr zufriedene Kunden. Dazu wäre auch eine Barcodekomponente von Nutzen... |
AW: [Bibliothek] Barcode für Delphi (Zint)
Ja wenn ich auch mal einen Wunsch äußern dürfte: QR2 Codes mit FMX, das würde mir gefallen .....
|
AW: [Bibliothek] Barcode für Delphi (Zint)
//Edit: Wahrscheinlich wird sich das Backend noch einmal ändern. Dann sollte es FMX-ready werden.
Update 14.08.13: Neues von den Strichmännchen 2 Codes sind neu hinzugekommen: Code 16k und Code 49. Außerdem haben wir das Backend insofern geändert, das nun ein WMF/LMF erzeugt wird, was man sich dann irgendwohin stretchen kann. Damit sollten theoretisch alle Anwendungsfälle abgedeckt sein (hoffen wir jedenfalls). Ansonsten gabs hier und da ein paar Bugfixes, umbenannte Units (damit die armen FPC-User < 2.7 auch damit arbeiten können ;)) und eine Demo-Projekt für Lazarus (mit 1.1 getestet) |
AW: [Bibliothek] Barcode für Delphi (Zint)
Servus,
kann man das auch für den C++ Builder nutzen? Das wäre echt fein. |
AW: [Bibliothek] Barcode für Delphi (Zint)
Ich denke, das wäre Holz in den Busch getragen. Das originale Zint-Projekt ist in C geschrieben. Imho sollten C-Builder-User wohl eher den original Code nutzen.
|
AW: [Bibliothek] Barcode für Delphi (Zint)
Update 15.08.13: Der Affe brennt:firejump:
Nach der Änderung des Backends auf die Rendered-Struktur wird nun auch Firemonkey unterstützt. Außerdem kann auf Canvas/WMF/LMF/BMP gerendert werden. Komponenten sind im Moment leider noch nicht dabei. |
AW: [Bibliothek] Barcode für Delphi (Zint)
@Codehunter
Für Barcodes gibt es genaue Beschreibungen, wie das Verhältnis von schmal zu breit sein muss und auch wie schmal schmal sein darf (zusätzlich aber noch abhängig von Scanner- und Ausgabemedium-Auflösung). Hier auf die Fehlerkorrektur des Scanners zu setzen ist ein sehr zweifelhafter Ansatz. |
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
|
AW: [Komponente] Barcode für Delphi (Zint)
Zitat:
Gruß Marco |
AW: [Bibliothek] Barcode für Delphi (Zint)
Demo Update
Um besser zu zeigen, was die Bibliothek bereits kann (in Bezug auf die Darstellung) haben wir die Demos aktualisiert.
|
AW: [Bibliothek] Barcode für Delphi (Zint)
Ähm, wäre es denkbar den Barcodeteil aus eurem Repos in ein eigenes auszulagern? Bei Google Code oder GitHub? Wäre super nett, dann könnte man direkt auf die Projektseite bezug nehmen.
//Edit und die externen JEDIs werden bei SVN Refresh nicht mehr eingebunden, kommt ein Fehler... |
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
Hab das Demo jetzt auch als mobile Version (XE4 iOS) zum Laufen gebracht (mit einigen Anpassungen - AnsiString z.b.). Portier es jetzt mal auf Android (XE5). :-D |
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
UPDATE für Lazarus Der Barcode kann jetzt über die TADrawer (Komponente TAChart) exportiert werden... so ist unter Lazarus ganz einfach SVG, WMF, FPVectorial Export möglich Ein Beispiel befindet sich in der Lazarus DEMO irgendwann kommt sicher auch nativer SVG Export ... aber es war einfach zuuuu verlockend :-D |
AW: [Bibliothek] Barcode für Delphi (Zint)
Zitat:
![]() den JEDI Fehler müssen wir uns mal ansehen Edit: Uns ist komplett entgangen, daß Jedi nach GitHub umgezogen ist ... ![]() Edit2: Jetzt geht der externe Jedi Link wieder |
AW: [Bibliothek] Barcode für Delphi (Zint)
UPDATE der Export Routinen
nativer SVG Export ist jetzt möglich - Beispiel in der VCL Demo |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz