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