IRONBARCODEの使用

C# Windowsアプリケーションでバーコードスキャナを使用する方法

更新済み 2024年1月20日
共有:

このチュートリアルでは、C#コンソールアプリケーションと.NET Windowsフォームアプリケーションで、IronBarcodeライブラリを使用してQRコードおよびバーコードをスキャンする方法を示します。

IronBarcodeライブラリを使用すると、複数のバーコードを同時にスキャンして読み取ることができ、不完全な画像も正常にスキャンできます。 まず、バーコードスキャナーとは何かを明確にしましょう。

バーコードスキャナーとは何ですか?

バーコードとは、異なる幅の黒い平行線と白いスペースから成る正方形または長方形のイメージのことです。 バーコードスキャナー(バーコードリーダー)は、印刷されたバーコードを読み取り、バーコードに含まれるデータをデコードして、そのデータをコンピュータに送信できる装置です。

以下の手順では、IronBarcodeライブラリを使用してバーコードスキャナーを作成する方法を紹介します。

C#でバーコードを読み取る方法

  • Microsoft Visual Studio で .NET Windows Forms アプリケーション プロジェクトを作成する
  • バーコードライブラリをインストール
  • 任意のバーコードまたはQRコードを読み取る
  • 単一のスキャンで複数のバーコードやQRコードを読み取る
  • IronBarcodeに不完全なスキャンや写真から読み取らせる

1. Microsoft Visual StudioでWindows Formsアプリケーションを作成する

Visual Studioを開く > 新しいプロジェクトの作成をクリック > Windowsフォームアプリケーションテンプレートを選択 > 次へを押す > プロジェクトに名前を付ける > 次へを押す > 対象の.NET Frameworkを選択 > 作成ボタンをクリック。

プロジェクトを作成した後、Visual Studioツールボックスから以下のようにフォームをデザインします:PictureBox、Label、TextBox、およびButtonコントロール。

C# Windowsアプリケーションでバーコードスキャナーを使用する方法、図1: バーコードスキャナー

バーコードスキャナー

2. C#でBarcode .NETライブラリをインストールする

バーコードライブラリをインストールするには、以下の3つの方法のいずれかを使用できます:

パッケージ マネージャー コンソール

以下のコマンドをパッケージマネージャーコンソールに入力してください。 パッケージをダウンロードしてインストールします。

Install-Package BarCode

2. NuGetパッケージマネージャーソリューション

バーコードライブラリは、NuGetパッケージソリューションを使用してインストールすることもできます。 次の手順に従うだけです:

ツール > NuGet パッケージ マネージャー > ソリューションの NuGet パッケージの管理 をクリックします。

これは、NuGetパッケージマネージャーを開きます。 「ブラウズ」をクリックし、「Barcode」を検索して、クラスライブラリをインストールしてください。

リンクからダウンロードする

代替手段として、IronBarCode.Dllダウンロードしてプロジェクトに参照として追加できます。

ダウンロードした後、次の参照をバーコードリーダープロジェクトに追加してください。

using IronBarCode;
using IronBarCode;
Imports IronBarCode
VB   C#

3. 任意のバーコードまたはQRコードを読み取る

.NETでバーコードやQRコードを読み取ることは、IronBarcodeライブラリを使用することで非常に簡単です。.NET バーコードリーダー.

バーコードスキャナー

プロジェクト内で読み取りたい画像を参照してください。 PictureBoxで開きます。 「scan code」をクリックしてください。 テキストはテキストボックスに表示されます。

以下は、画像を開くための「browse」ボタンのコードです:

// open file dialog   
OpenFileDialog open = new OpenFileDialog();  
// image filters  
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {  
    // display image in picture box
    pictureBox1.Image = new Bitmap(open.FileName); 
    // store image file path in class data member. Initialize it as string ImageFileName;
    ImageFileName = open.FileName; 
}
// open file dialog   
OpenFileDialog open = new OpenFileDialog();  
// image filters  
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {  
    // display image in picture box
    pictureBox1.Image = new Bitmap(open.FileName); 
    // store image file path in class data member. Initialize it as string ImageFileName;
    ImageFileName = open.FileName; 
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

「scan code」ボタンのコード:

BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
Dim Result As BarcodeResult = BarcodeReader.Read(ImageFileName)
textBox1.Text = Result.Text
VB   C#

バーコードスキャナーは、以下のようにテキストボックスにバーコードデータを表示します:

C# Windowsアプリケーションでバーコードスキャナーを使用する方法、図2:C#でスキャンするバーコード画像

C#で読み取るバーコード画像

QRコードスキャナー

このセクションでは、IronBarcodeライブラリが傾いたQRコードに関する実際の状況を効果的に処理します。 歪んだ角度のQRコードは扱うことができ、読み取ることができますが、`読取 (読み取り)もちろん、英語のテキストを教えていただけますでしょうか?メソッド、それでも解決により多くの時間がかかることがあります。 IronBarcodeライブラリは、カスタマイズされた使用方法を提供しますBarcodeReaderOptionsそのような画像入力に対応するための追加パラメータとして。 コードは次のようになります:

// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
    new SharpenFilter(),
    new InvertFilter(),
    new ContrastFilter(),
    new BrightnessFilter(),
    new AdaptiveThresholdFilter(),
    new BinaryThresholdFilter()
};

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    // Set chosen filters in BarcodeReaderOptions:
    ImageFilters = filtersToApply,

    ExpectBarcodeTypes = BarcodeEncoding.QRCode 
 BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
    new SharpenFilter(),
    new InvertFilter(),
    new ContrastFilter(),
    new BrightnessFilter(),
    new AdaptiveThresholdFilter(),
    new BinaryThresholdFilter()
};

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    // Set chosen filters in BarcodeReaderOptions:
    ImageFilters = filtersToApply,

    ExpectBarcodeTypes = BarcodeEncoding.QRCode 
 BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

傾いたQRコード画像を開いた後、出力は次のようになります:

C# Windowsアプリケーションでバーコードスキャナーを使用する方法、図4:傾いたQrCode画像

傾いた QR コード画像

複数のバーコードを一度に読み取る

PDFドキュメント

バーコード画像はPDFファイルからスキャンでき、その結果は望むように適切に表示することができます。 以下のサンプルコードは、PDFファイルから複数のバーコードを読み取ることができます。

// Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) { 
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte [] Binary = PageResult.BinaryValue;
    Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
// Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) { 
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte [] Binary = PageResult.BinaryValue;
    Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
' Multiple barcodes may be scanned up from a single document or image.  A PDF document may also used as the input 
Dim PDFResults() As imagePagedBarcodeResult = BarcodeReader.ReadPdf("MultipleBarcodes.pdf")
' Work with the results
For Each PageResult In PDFResults
	Dim Value As String = PageResult.Value
	Dim PageNum As Integer = PageResult.PageNumber
	Dim Img As System.Drawing.Bitmap = PageResult.BarcodeImage
	Dim BarcodeType As BarcodeEncoding = PageResult.BarcodeType
	Dim Binary() As Byte = PageResult.BinaryValue
	Console.WriteLine(PageResult.Value & " on page " & PageNum)
Next PageResult
VB   C#

PDFファイルに含まれるバーコードおよびQRコード:

バーコードスキャナーをC# Windowsアプリケーションで使用する方法、図3:C# - PDFからのバーコード読み取り結果

C# - PDFからバーコードを読み取る結果

不完全な画像からバーコードを読み取る

現実のユースケースでは、バーコードはしばしば画像、スキャン、サムネイル、または写真に欠陥があり、デジタルノイズを含んでいたり、傾いていたりすることがあります。 このセクションでは、サムネイルからバーコードデータを読み取る方法を示します。

サムネイル

IronBarcodeライブラリは、C# バーコードジェネレーター, 壊れたサムネイルのバーコードを読み取ることさえ可能です。

C# Windowsアプリケーションでバーコードスキャナーを使用する方法、図5:自動バーコードサムネイルサイズ補正。 C#でIronBarcodeを使用してファイルを読み取る

**自動バーコードサムネイルサイズ補正。 C#でIronBarcodeを使用してファイルを読み取る

それは、実際のバーコードとして合理的に表現するには小さすぎるバーコード画像を自動的に検出し、その後、すべてのサムネイル処理に関連するデジタルノイズをスケールアップしてクリーンアップし、それによって再び読み取り可能にします。

// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
' Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
Dim SmallResult As BarcodeResult = BarcodeReader.Read("ThumbnailOfBarcode.gif")
VB   C#

サマリー

IronBarcodeは、汎用性の高い.NETソフトウェアライブラリでありC# QRコードジェネレーターさまざまなバーコード画像形式をスキャンおよび読み取るためであり、これらのバーコードが完璧なスクリーンキャプチャであるか、写真、スキャン、その他のものであるかどうかに関係なく行うことができます。現実世界の不完全な画像. さらに、IronBarcodeは、バーコード読み取り速度を向上させるための幅広いカスタマイズオプションを提供しています。領域の切り取りはい、以下の内容を日本語に翻訳いたします:

以下の内容を日本語に翻訳してください:

IronPDF allows developers to generate, edit and read PDF files in .NET applications. It simplifies the process of integrating PDF functionalities into software development projects.

Let's get startedマルチスレッド、およびMLモデルの精度. 訪問する公式ドキュメントページ詳細についてはIronBarcodeをご覧ください。

現在、購入すればコンプリートIron Suite5つのライブラリを2つの価格で手に入れることができます。

< 以前
バーコードジェネレーター .NET チュートリアル
次へ >
ASP.NETでC#を使用してバーコードを生成する方法