FineReader と特定のバーコード タイプ

FineReader 認識エンジンは、サポートされるすべてのタイプのバーコードの抽出をほぼ正確に行うことができます。ただし、一部の特定のタイプで問題が発生する可能性があります。次に、問題が発生した場合に特定のバーコード タイプを正常に抽出する方法の詳細を示します。

Datamatrix バーコード

ほとんどの場合、Datamatrix バーコードは、FineReader 認識エンジンのデフォルト設定を使用して正常に抽出されます。

ただし、場合によっては、デフォルト設定で Datamatrix バーコードを正常に抽出できないことがあります。

この問題を回避するには、DetectInvertedZones を False に設定して、設定を無効にします。これで Datamatrix バーコードを正常に抽出できる可能性を高めることができます。

問題のある Datamatrix バーコードが正常に抽出されるように変更内容を改善するには、BeforeLocate イベントに次のコードを追加します。

	Private Sub Document_BeforeLocate(ByVal pXDoc As CASCADELib.CscXDocument, ByVal LocatorName As String)
		If(LocatorName = "BarcodeLocator") Then
				Dim Loc As CscBarcodeLocator
				Set Loc = Project.ClassByIndex(0).Locators.ItemByName(LocatorName).LocatorMethod
				Loc.DetectInvertedZones = False
		End If
	End Sub

QR コード

通常は、FineReader 認識エンジンのデフォルト設定を使用して、QR コードを正常に抽出できます。

ただし、場合によっては、デフォルト設定で QR コードを正常に抽出できないことがあります。

この問題を回避するには、AdvancedExtractionMode を False に設定します。これで QR コードを正常に抽出できる可能性を高めることができます。

問題のある QR コードが正常に抽出されるように変更内容を改善するには、BeforeLocate イベントに次のコードを追加します。

	Private Sub Document_BeforeLocate(ByVal pXDoc As CASCADELib.CscXDocument, ByVal LocatorName As String)
		If(LocatorName = "BarcodeLocator") Then
			Dim Loc As CscBarcodeLocator
			Set Loc = Project.ClassByIndex(0).Locators.ItemByName(LocatorName).LocatorMethod
			Loc.EnableAdvancedExtractionMode = False
		End If
	End Sub