Ich habe eine DLL in PB geschrieben, welche in Bitmaps (BMP, JPG, PNG und TIF) nach Barcodes sucht und diese ausliest. Also eine Barcode OCR...
Jetzt suche ich Tester für die DLL. Ich möchte folgendes wissen:
- Hat es geklappt (Barcodes gefunden)?
- Mit wieviel DPI und Farbtiefe war das Bild gescannt?
- Hatte der Barcode "schräglage"?
Ich vermute mal, dass 300 DPI und S/W das minimum sind (meine Tests).
Aktuell kann die DLL Barcodes in den folgenden Typen erkennen:
- Code39
- Code128 incl. Prüfzifferprüfung
- EAN13 incl. Prüfzifferprüfung
Sie müssen (noch) waagerecht im Bild liegen (normal oder auf dem Kopf) und dürfen so ca 5° bis 10° schräg stehen (meine Tests).
Hier der Download-Link:
http://www.x-beliebig.info/Download/INBarcodeOCR.zip
Hier die Vorab-Doku:
Code: Alles auswählen
; INBarcodeOCR documentation
;
; The DLL provides the following functions:
;
; GetBarcodesFile(Filename)
; --------------------------------------------------------------------
; Retrieves the barcodes in a given image-file (BMP, JPG, PNG, TIF)
; Returns the number of barcodes found
; Returns -1 for an error (file not found)
; Returns -2 if not registered
; GetBarcodesClipboard()
; --------------------------------------------------------------------
; Retrieves the barcodes in a given image in clipboard
; Returns the number of barcodes found
; Returns -1 for an error (no image in clipboard)
; Returns -2 if not registered
; GetBarcodesResult()
; --------------------------------------------------------------------
; Returns the result of the barcode OCR. Returns the following string:
; X TAB Y TAB Width TAB Height TAB Codetype TAB Code CR
; X TAB Y TAB Width TAB Height TAB Codetype TAB Code CR
; TAB = ASCII 9
; CR = ASCII 13
; GetBarcodeVersionInfo()
; --------------------------------------------------------------------
; Returns the version of this DLL
; RegisterBarcodeDLL(Password)
; --------------------------------------------------------------------
; Registers this DLL using a password you got after purchase.
; Returns 0 for success
; Returns -1 for failure
Code: Alles auswählen
; Test for INBarcodeOCR.dll
Filename.s = "c:\Bild.bmp"
If OpenLibrary(0, "INBarcodeOCR.dll")
; show version information
Debug "Version: " + PeekS(CallFunction(0, "GetBarcodeVersionInfo"))
; register the dll
If CallFunction(0, "RegisterBarcodeDLL", "beta") = 0
; start OCR and find all barcodes
Ret.l = CallFunction(0, "FindBarcodesFile", Filename.s)
If Ret.l > 0
; show the result
Result.s = PeekS(CallFunction(0, "GetBarcodesResult"))
Debug "Barcode result: " + Result.s
EndIf
If Ret.l = 0
Debug "No barcodes found"
EndIf
If Ret.l < 0
Debug "Error " + Str(Ret.l)
EndIf
Else
Debug "Wrong password" ; not correct registered
EndIf
CloseLibrary(0)
EndIf
Das Passwort für diese DLL ist "beta" (ohne Anführungszeichen).
Nein, ich kann den Source nicht veröffentlichen da hier eine Menge KnowHow drinnensteckt und das ganze später als Shareware-DLL verkauft werden soll (ich vermute mal 20,- EUR je Runtime oder 600,- EUR für eine Runtime-Freie Version. Das ist aber noch offen...).
Ich freue mich auf Rückmeldungen!
Volker