C#でバーコードのクロップ領域を設定する方法

C# でバーコードの切り取り領域を定義して読み取り速度を高速化する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronBarcodeの最も重要な機能の一つは、ユーザーがクロップ領域を指定できることです。 この機能の目的は、画像内のクロップ領域で指定された特定のバーコードやエリアのみをIronBarcodeが読み取れるようにすることです。これはIron Software.Drawing.Rectangleオブジェクトを使用して実現します。 この機能を使用することで、読み取りのエラーを減少させるだけでなく、読み取りのパフォーマンスも向上します。

クイックスタート: クロップ領域を定義し高速なバーコード読み取りに適用

クロップ矩形を作成し、数秒でIronBarcodeにフィード—追加のセットアップ不要で摩擦なく使用できます。 BarcodeReaderOptionsを使用して特定の画像エリアにスキャンを制限する方法の簡単さをご覧ください。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronBarcode をインストールします

    PM > Install-Package BarCode

  2. このコード スニペットをコピーして実行します。

    var results = IronBarCode.BarcodeReader.Read("image.png", new IronBarCode.BarcodeReaderOptions { CropArea = new IronSoftware.Drawing.Rectangle(x: 50, y: 100, width: 300, height: 150) });
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronBarcode を使い始めましょう
    arrow pointer

画像のクロップ領域の座標とサイズを見つける

画像内の点の座標を見つけるために、利用可能な方法は多数あります。 一つの方法として、コンピュータの"ペイント"アプリケーションを使用して画像をロードする方法があります。 クロップ領域の最初の座標を取得するには、所望の最初の位置、すなわちRectangleの左上の隅になる場所にカーソルを移動し、画面左下に表示されるアプリから得られるx、y座標を取得します。 次に、Rectangleの右下の隅となる第2の点を見つけます。 より明確な理解のために、以下の画像を参照してください。

CropRegion reference

その座標値は、Rectangleオブジェクトのプロパティとして使用できます。 オブジェクトのx2 - x1として定義でき、高さy2 - y1として定義できます。

:path=/static-assets/barcode/content-code-examples/how-to/set-crop-region-instantiate-CropRegion.cs
using IronBarCode;

int x1 = 62;
int y1 = 29;
int x2 = 345;
int y2 = 522;

IronSoftware.Drawing.Rectangle crop1 = new IronSoftware.Drawing.Rectangle(x: x1, y: y1, width: x2-x1, height: y2-y1);
Imports IronBarCode

Private x1 As Integer = 62
Private y1 As Integer = 29
Private x2 As Integer = 345
Private y2 As Integer = 522

Private crop1 As New IronSoftware.Drawing.Rectangle(x:= x1, y:= y1, width:= x2-x1, height:= y2-y1)
$vbLabelText   $csharpLabel

クロップ領域の適用とバーコード読み取り

IronBarcodeに読み取らせたいクロップ領域を定義したら、BarcodeReaderOptionsに他の設定の一部としてオブジェクトを適用できます。 これをBarcodeReader.Read()メソッドのパラメータとして使用できます。 以下のコードスニペットはこのプロセスを示しています。

:path=/static-assets/barcode/content-code-examples/how-to/set-crop-region-apply-CropRegion.cs
using IronBarCode;
using System;

int x1 = 62;
int y1 = 29;
int x2 = 345;
int y2 = 522;

IronSoftware.Drawing.Rectangle crop1 = new IronSoftware.Drawing.Rectangle(x: x1, y: y1, width: x2 - x1, height: y2 - y1);

BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    CropArea = crop1
};

var result = BarcodeReader.Read("sample.png", options);
foreach (var item in result)
{
    Console.WriteLine(item.Value);
}
Imports IronBarCode
Imports System

Private x1 As Integer = 62
Private y1 As Integer = 29
Private x2 As Integer = 345
Private y2 As Integer = 522

Private crop1 As New IronSoftware.Drawing.Rectangle(x:= x1, y:= y1, width:= x2 - x1, height:= y2 - y1)

Private options As New BarcodeReaderOptions() With {.CropArea = crop1}

Private result = BarcodeReader.Read("sample.png", options)
For Each item In result
	Console.WriteLine(item.Value)
Next item
$vbLabelText   $csharpLabel

上記のコードスニペットから、BarcodeReaderOptionsオブジェクトにCropAreaプロパティとしてインスタンス化したRectangleを使用しています。 このBarcodeReaderOptionsオブジェクトをBarcodeReader.Read()メソッドのパラメータとして使用し、画像にCropAreaを適用し、内部のバーコードを読み取ります。

よくある質問

クロップ領域を定義することはC#でのバーコード読み取りにどのように改善をもたらしますか?

IronBarcodeライブラリを使用してC#でクロップ領域を定義すると、画像の特定のエリアに集中でき、不要なデータ処理を減らし、バーコード読み取りの精度と速度を向上させます。

バーコード読み取りにクロップ領域を設定するにはどのような手順が含まれていますか?

バーコード読み取りにクロップ領域を設定するには、まず画像エディタで領域の座標を決定し、Iron Software.Drawing.Rectangleオブジェクトを使用して領域を定義し、BarcodeReader.Read()メソッドのBarcodeReaderOptionsを介して適用します。

画像内のクロップ領域の座標をどうやって決定しますか?

'ペイント'などの画像編集ツールを使用して、望む長方形の左上と右下の角を選択し、x, y座標を記録することでクロップ領域の座標を決定できます。

クロップ領域を定義する上でRectangleオブジェクトの役割は何ですか?

Iron Software.Drawing.Rectangleオブジェクトは、クロップ領域の座標と寸法を指定するために使用され、画像の特定のエリアにバーコード読み取りプロセスを集中させるのに役立ちます。

C#で設定された後にクロップ領域を変更できますか?

はい、BarcodeReaderOptionsに適用する前にRectangleオブジェクトの座標と寸法を調整することで、クロップ領域を変更することができます。

IronBarcodeでのバーコード読み取りにクロップ領域を使用することは必須ですか?

バーコード読み取りにCrop Regionを使用することは必須ではありませんが、特定の画像領域に読み取りを集中させることで、プロセスの効率と正確性を大幅に向上させることができます。

BarcodeReaderOptionsオブジェクトはクロップ領域をどのように活用しますか?

BarcodeReaderOptionsオブジェクトはCropAreaプロパティとしてクロップ領域を設定し、それをBarcodeReader.Read()メソッドのパラメータとして渡して、定義された領域にバーコード読み取りを集中させます。

バーコード検出にクロップ領域を使用する利点は何ですか?

バーコード検出でクロップ領域を使用することで、読み取りエラーの減少、速度の向上、特定の画像エリアに集中することによって、全体的なバーコード読み取り性能が向上します。

Hairil Hasyimi Bin Omar
ソフトウェアエンジニア
すべての優れたエンジニアのように、ハイリルは熱心な学習者です。彼はC#、Python、Javaの知識を磨き、その知識を活用してIron Softwareのチームメンバーに価値を追加しています。ハイリルはマレーシアのマラ工科大学からIron Softwareのチームに参加し、化学およびプロセス工学の学士号を取得しました。
準備はできましたか?
Nuget ダウンロード 1,979,979 | Version: 2025.11 リリース