LEADTOOLSバーコード(Leadtools.Barcodeアセンブリ)

フレームを表示

ReadBarcode(RasterImage、LeadRect、BarcodeSymbology、IBarcodeReadOptions)メソッド








画像データを格納するRasterImageオブジェクト。NULLを指定することはできません。
バーコードの検索と検出を行う画像領域を指定するLeadRect。空の長方形を指定すると、画像全体が検索されます。
検索するバーコードバーコード体系(型)を指定するBarcodeSymbology列挙体メンバ。このBarcodeReaderですべての利用できるバーコード体系を検索するために、BarcodeSymbology.Unknownを渡すことができます。
使用するオプションを指定するIBarcodeReadOptions派生クラスのインスタンス。

このメソッドに関する詳細は、ReadBarcodeを参照してください。

構文
'Declaration
 
Public Overloads Function ReadBarcode( _
   ByVal image As RasterImage, _
   ByVal searchBounds As LeadRect, _
   ByVal symbology As BarcodeSymbology, _
   ByVal options As IBarcodeReadOptions _
) As BarcodeData
'Usage
 
Dim instance As BarcodeReader
Dim image As RasterImage
Dim searchBounds As LeadRect
Dim symbology As BarcodeSymbology
Dim options As IBarcodeReadOptions
Dim value As BarcodeData
 
value = instance.ReadBarcode(image, searchBounds, symbology, options)
 function Leadtools.Barcode.BarcodeReader.ReadBarcode(RasterImage,LeadRect,BarcodeSymbology,IBarcodeReadOptions)( 
   image ,
   searchBounds ,
   symbology ,
   options 
)

パラメーター

image
画像データを格納するRasterImageオブジェクト。NULLを指定することはできません。
searchBounds
バーコードの検索と検出を行う画像領域を指定するLeadRect。空の長方形を指定すると、画像全体が検索されます。
シンボル
検索するバーコードバーコード体系(型)を指定するBarcodeSymbology列挙体メンバ。このBarcodeReaderですべての利用できるバーコード体系を検索するために、BarcodeSymbology.Unknownを渡すことができます。
オプション
使用するオプションを指定するIBarcodeReadOptions派生クラスのインスタンス。

戻り値

BarcodeDataのインスタンスまたは見つけられるバーコードのシンボル、データ、場所と任意の回転角を格納するその派生クラスの1つ。バーコードが見つからないならば、このメソッドはnullVisual BasicではNothing)を返します。
解説

注意:LEADTOOLS for .NETでは、LeadRectLogicalRectangleに相当し、IBarcodeReadOptionsBarcodeReadOptionsに相当します。

サンプル

以下のサンプルは、このメソッドに明示的なオプションを指定して、反転した画像から1つのバーコードを読み取る方法を示します。

Copy Code  
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;

      
public async Task BarcodeReader_ReadBarcodeExample2()
{
   string imageFileName = @"Assets\Barcode2.tif";
   // Create a Barcode engine
   BarcodeEngine engine = new BarcodeEngine();

   // Get the Barcode reader instance
   BarcodeReader reader = engine.Reader;

   using(RasterCodecs codecs = new RasterCodecs())
   {
      StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(imageFileName);
      using(RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile)))
      {
         // Invert the image
         Debug.WriteLine("Inverting the image");
         Leadtools.ImageProcessing.Color.InvertCommand invert = new Leadtools.ImageProcessing.Color.InvertCommand();
         invert.Run(image);

         // All barcodes have default options of black foreground color and white background color, so
         // reading the barcode with default options should not return any barcodes right now

         // Read the QR barcode from this image using default options
         Debug.WriteLine("Reading using default options");
         BarcodeData barcode = reader.ReadBarcode(image, LeadRectHelper.Empty, BarcodeSymbology.QR, null);

         // Show its location and data if found
         // This will print out "Not found"
         if(barcode != null)
         {
            Debug.WriteLine("Found at {0}, data:\n{1}", barcode.Bounds, barcode.Value);
         }
         else
         {
            Debug.WriteLine("Not found");
         }

         // Now create QR read options to have white foreground color and black background color
         QRBarcodeReadOptions qrReadOptions = new QRBarcodeReadOptions();
         qrReadOptions.ForeColor = RasterColorHelper.FromKnownColor(RasterKnownColor.White);
         qrReadOptions.BackColor = RasterColorHelper.FromKnownColor(RasterKnownColor.Black);

         // And use it to try to read the QR barcode again
         Debug.WriteLine("Reading using specific options that instruct the engine to look for white on black barcodes");
         barcode = reader.ReadBarcode(image, LeadRectHelper.Empty, BarcodeSymbology.QR, qrReadOptions);

         // Show its location and data if found
         // This will find the barcode and print its information now
         if(barcode != null)
         {
            Debug.WriteLine("Found at {0}, data:\n{1}", barcode.Bounds, barcode.Value);
         }
         else
         {
            Debug.WriteLine("Not found");
         }
      }
   }
}
必要条件

ターゲットプラットホーム

参照

参照

BarcodeReaderクラス
BarcodeReaderメンバ
オーバーロードリスト

Leadtools.Barcodeは、バーコードモジュールのライセンスと、解除キーが必要です。詳細は、以下を参照してください。LEADTOOLSツールキット機能