get_bar_code_objectT_get_bar_code_objectGetBarCodeObjectGetBarCodeObject (Operator)

Name

get_bar_code_objectT_get_bar_code_objectGetBarCodeObjectGetBarCodeObject — Zugriff auf ikonische Objekte, die bei der Suche und der Dekodierung von Barcodes angelegt werden bzw. diese beschreiben.

Signatur

get_bar_code_object( : BarCodeObjects : BarCodeHandle, CandidateHandle, ObjectName : )

Herror T_get_bar_code_object(Hobject* BarCodeObjects, const Htuple BarCodeHandle, const Htuple CandidateHandle, const Htuple ObjectName)

void GetBarCodeObject(HObject* BarCodeObjects, const HTuple& BarCodeHandle, const HTuple& CandidateHandle, const HTuple& ObjectName)

HObject HBarCode::GetBarCodeObject(const HTuple& CandidateHandle, const HString& ObjectName) const

HObject HBarCode::GetBarCodeObject(const HString& CandidateHandle, const HString& ObjectName) const

HObject HBarCode::GetBarCodeObject(const char* CandidateHandle, const char* ObjectName) const

HObject HBarCode::GetBarCodeObject(const wchar_t* CandidateHandle, const wchar_t* ObjectName) const   (Nur Windows)

static void HOperatorSet.GetBarCodeObject(out HObject barCodeObjects, HTuple barCodeHandle, HTuple candidateHandle, HTuple objectName)

HObject HBarCode.GetBarCodeObject(HTuple candidateHandle, string objectName)

HObject HBarCode.GetBarCodeObject(string candidateHandle, string objectName)

Beschreibung

Der Operator get_bar_code_objectget_bar_code_objectGetBarCodeObjectGetBarCodeObjectGetBarCodeObject erlaubt den Zugriff auf ikonische Objekte, die beim letzten Aufruf von find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode während der Suche nach Barcodes oder beim Lesen der gefundenen Symbole angelegt wurden. Für den Zugriff muss neben dem Namen des gewünschten Bildobjekts (ObjectNameObjectNameObjectNameObjectNameobjectName) auch das zugrundeliegende Barcode-Modell (BarCodeHandleBarCodeHandleBarCodeHandleBarCodeHandlebarCodeHandle) angegeben werden. Außerdem muss in CandidateHandleCandidateHandleCandidateHandleCandidateHandlecandidateHandle ein Index auf ein dekodiertes Symbol oder einen Symbolkandidaten, bzw. 'all'"all""all""all""all" für alle dekodierten Symbole oder Symbolkandidaten übergeben werden.

Je nachdem wie der Parameter ObjectNameObjectNameObjectNameObjectNameobjectName ausgewählt ist, werden die Ausgabeobjekten in BarCodeObjectsBarCodeObjectsBarCodeObjectsBarCodeObjectsbarCodeObjects zurückgeliefert, wie folgend:

'symbol_regions'"symbol_regions""symbol_regions""symbol_regions""symbol_regions":

Die Regionen von erfolgreich dekodierten Symbolen werden zurückgegeben. Die Reihenfolge der Objekte entspricht der Reihenfolge der dekodierten Zeichenfolgen im Operator get_bar_code_resultget_bar_code_resultGetBarCodeResultGetBarCodeResultGetBarCodeResult.

'candidate_regions'"candidate_regions""candidate_regions""candidate_regions""candidate_regions":

Die potentiellen Barcode-Regionen werden ausgegeben. Gibt es insgesamt m Kandidaten und n erfolgreiche Ergebnisse, so können mit CandidateHandleCandidateHandleCandidateHandleCandidateHandlecandidateHandle gleich 0 bis (n-1) die ursprünglichen Regionen der entsprechenden Ergebnisse und mit CandidateHandleCandidateHandleCandidateHandleCandidateHandlecandidateHandle gleich n bis (m-1) die Regionen der erfolglosen Kandidaten abgerufen werden.

'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all", 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid", 'scanlines_all_plain'"scanlines_all_plain""scanlines_all_plain""scanlines_all_plain""scanlines_all_plain", 'scanlines_valid_plain'"scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain", 'scanlines_merged_edges'"scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges":

Es werden XLD Konturen ausgegeben, welche die einzelnen Striche innerhalb der Scanlinien darstellen. Das Auslesen der Scanlinien kann nur erfolgen, wenn der Barcode mit find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode oder decode_bar_code_rectangle2decode_bar_code_rectangle2DecodeBarCodeRectangle2DecodeBarCodeRectangle2DecodeBarCodeRectangle2 im 'persistence'"persistence""persistence""persistence""persistence"-Modus gelesen wurde (siehe set_bar_code_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam). 'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all" stellt alle Scanlinien dar, die von find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode möglicherweise angelegt werden, um einen Barcode zu dekodieren. 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" stellt nur diejenige 'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all" dar, die erfolgreich dekodiert werden können. Bei einzeiligen Barcodes gibt es mindestens eine 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" je erfolgreich dekodiertem Barcodesymbol. Im Gegensatz dazu liefert 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" leere Objekte wenn die Dekodierung des Symbols erfolglos war. Diese Regel ist für gestapelte Codes (wie z.B. 'GS1 DataBar Stacked'"GS1 DataBar Stacked""GS1 DataBar Stacked""GS1 DataBar Stacked""GS1 DataBar Stacked" und 'GS1 DataBar Expanded Stacked'"GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked") ähnlich, allerdings bezieht sie sich auf die einzelnen Zeilen, anstatt auf das ganze Barcodesymbol. 'scanlines_merged_edges'"scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges" zeigt die Scanlinien und Kanten, die für die Dekodierung der vereinigten Scanlinie verwendet wurden (Siehe 'merge_scanlines' in set_bar_code_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam).

'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all" stellt alle Scanlinien dar, die von find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode möglicherweise angelegt werden, um einen Barcode zu dekodieren.

'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" stellt nur diejenigen Scanlinien dar, die erfolgreich dekodiert werden können. Die Mindestanzahl an Scanlinien, die erfolgreich gelesen werden können müssen, kann mit set_bar_code_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam mit dem Parameter 'min_identical_scanlines'"min_identical_scanlines""min_identical_scanlines""min_identical_scanlines""min_identical_scanlines" angepasst werden. Wenn die Dekodierung des Symbols erfolglos war, liefert 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" leere Objekte. Diese Regel ist für gestapelte Codes (wie z.B. 'GS1 DataBar Stacked'"GS1 DataBar Stacked""GS1 DataBar Stacked""GS1 DataBar Stacked""GS1 DataBar Stacked" und 'GS1 DataBar Expanded Stacked'"GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked""GS1 DataBar Expanded Stacked") ähnlich, allerdings bezieht sie sich auf die einzelnen Zeilen, anstatt auf das ganze Barcodesymbol.

'scanlines_merged_edges'"scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges" zeigt die Scanlinien und Kanten, die für die Dekodierung der vereinigten Scanlinien verwendet wurden (siehe 'merge_scanlines' in set_bar_code_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam).

get_bar_code_objectget_bar_code_objectGetBarCodeObjectGetBarCodeObjectGetBarCodeObject gibt jede Scanlinie als eigene XLD Kontur zurück. Die XLD Konturen, die von 'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all" und 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid" zurückgegeben werden, sind nur zur Visualisierung gedacht und bestehen deshalb aus vielen XLD Punkten. Doppelte Linien werden zwischen Kanten benutzt, die als Striche erkannt wurden, während einfache Linien für weiße Lücken benutzt werden. Zusätzliche Informationen über jede Scanlinie können mit get_bar_code_resultget_bar_code_resultGetBarCodeResultGetBarCodeResultGetBarCodeResult mit dem Parameter 'status'"status""status""status""status" erhalten werden.

Die '_plain'-Varianten 'scanlines_all_plain'"scanlines_all_plain""scanlines_all_plain""scanlines_all_plain""scanlines_all_plain" und 'scanlines_valid_plain'"scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain" geben die o.g. Scanlinien in vereinfachter Form zurück. Jede gefundene Kante wird hier als ein Punkt einer XLD-Kontur zurückgegeben, wobei für jede Scanlinie eine neue XLD-Kontur begonnen wird. Scanlinien, für die keine Kante gefunden wurde, werden nicht zurückgegeben.

Ausführungsinformationen

Parameter

BarCodeObjectsBarCodeObjectsBarCodeObjectsBarCodeObjectsbarCodeObjects (output_object)  object(-array) objectHObjectHObjectHobject *

Ikonische Objekte, die als Zwischenergebnisse bei der Barcode-Suche oder deren Auswertung anfallen.

BarCodeHandleBarCodeHandleBarCodeHandleBarCodeHandlebarCodeHandle (input_control)  barcode HBarCode, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des zu verwendenden Barcode-Modells.

CandidateHandleCandidateHandleCandidateHandleCandidateHandlecandidateHandle (input_control)  integer HTupleHTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Auswahl der Barcode-Ergebnisse oder Kandidaten, für die eine Information abgefragt werden soll.

Defaultwert: 'all' "all" "all" "all" "all"

Wertevorschläge: 0, 1, 2, 'all'"all""all""all""all"

ObjectNameObjectNameObjectNameObjectNameobjectName (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Name des ikonischen Objekts, das abgefragt werden soll.

Defaultwert: 'candidate_regions' "candidate_regions" "candidate_regions" "candidate_regions" "candidate_regions"

Werteliste: 'candidate_regions'"candidate_regions""candidate_regions""candidate_regions""candidate_regions", 'scanlines_all'"scanlines_all""scanlines_all""scanlines_all""scanlines_all", 'scanlines_all_plain'"scanlines_all_plain""scanlines_all_plain""scanlines_all_plain""scanlines_all_plain", 'scanlines_merged_edges'"scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges""scanlines_merged_edges", 'scanlines_valid'"scanlines_valid""scanlines_valid""scanlines_valid""scanlines_valid", 'scanlines_valid_plain'"scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain""scanlines_valid_plain", 'symbol_regions'"symbol_regions""symbol_regions""symbol_regions""symbol_regions"

Ergebnis

get_bar_code_objectget_bar_code_objectGetBarCodeObjectGetBarCodeObjectGetBarCodeObject liefert den Wert 2 (H_MSG_TRUE), falls die übergebenen Parameter korrekt und die angeforderten Objekte für die letzte Symbolsuche verfügbar sind. Ansonsten wird eine Fehlerbehandlung durchgeführt.

Vorgänger

find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode

Siehe auch

get_bar_code_resultget_bar_code_resultGetBarCodeResultGetBarCodeResultGetBarCodeResult

Modul

Bar Code