フッターコンテンツにスキップ
IRONQRの使用
IronQRを使用してQRコードを読む方法

C# QRコードリーダー(ステップバイステップチュートリアル)

新しく多様なバーコードをオンデマンドで生成することは、多くの商用.NETアプリケーションにおいて重要な側面です。 IronBarcodeライブラリは、他のサードパーティオプションと比較すると、これを非常に迅速、便利、そして簡単に行うことができます。 このチュートリアルは、これがどのようにそうであるかを示すことを目的としています。

1. 新しいプロジェクトの作成

Visual Studio を開いて、ファイル メニューに移動します。 新しいプロジェクトを選択し、次にコンソールアプリケーション/Windowsフォーム/WPFアプリケーションを選択します。 バーコードはすべてのタイプのアプリケーションで使用できます。 さらに、Webform/MVC/MVCコアなどのアプリでこれらを使用することができます。

C# QRコードリーダー(ステップバイステップチュートリアル)、図1:新しいプロジェクトを構成する 新しいプロジェクトを構成する

プロジェクト名を入力し、Visual Studioの適切なテキストボックスでファイルパスを選択します。 次に、作成ボタンをクリックし、必要な.NETフレームワークを選択します。 プロジェクトは、選択したアプリケーション用に構造を生成します。 コンソールアプリケーションを選択した場合、コードを入力してアプリケーションを構築/実行できるprogram.csファイルが開きます。

2. IronBarcode NuGetパッケージをインストール

Visual Studioでソリューションエクスプローラーに移動し、プロジェクトを左クリックします。 ポップアップメニューから、NuGetパッケージマネージャーを選択し、キーワードとして"Barcode"を検索します。 NuGetパッケージダイアログで最初の結果を選択し、インストールオプションをクリックします。

C# QRコードリーダー(ステップバイステップチュートリアル)、図2:NuGetパッケージマネージャーからIronBarcodeライブラリをインストール NuGetパッケージマネージャーからIronBarcodeライブラリをインストール

Visual Studioでは次の手順に従います:ツール > NuGet Package Manager > Package Manager Console

パッケージマネージャコンソールタブを開きます。 以下の行を入力します:

Install-Package IronQR

C# QRコードリーダー(ステップバイステップチュートリアル)、図3:NuGetパッケージマネージャーコンソール NuGetパッケージマネージャーコンソール

以下のリンクにアクセスして、バーコードリーダーSDKの最新バージョンについて詳しく学んでください。

https://www.nuget.org/packages/Barcode

次に、パッケージはすべてのDLLファイルをダウンロードし、現在のプロジェクトに.NETプロジェクト参照としてDLLファイルの参照を追加します。

Visual Studioプロジェクトは、コードと共に使用する準備が整いました。

3. 参照の追加

以下のようにコードにIronBarCodeリファレンスを追加すると、.NET Coreで利用可能なIronBarcodeライブラリの関数が使用できるようになります。 バーコードリーダーコントロール、QRコードの読み取り、コンポーネント、QRコードタイプのサポート、およびバーコードリーダーSDKの互換性について詳細を学ぶには、このリンクをご参照ください: https://ironsoftware.com/csharp/barcode/

using IronBarCode;
using IronBarCode;
Imports IronBarCode
$vbLabelText   $csharpLabel

4. バーコードインスタンスの作成

BarcodeReaderはQRコードを読み込み/作成するために使われる静的クラスです。 静的クラスBarcodeReaderのためにオブジェクトインスタンスを作成せずに使用することができます。 バーコードリーダーコントロールは、ReadまたはReadAsyncの単一の機能を使用して15種類のバーコードをスキャンする能力を提供します。 IronBarcodeライブラリは、様々なソースからQRコード/バーコードを読むことを可能にします:

  • 文字列
  • ストリーム
  • 画像
  • ビットマップ

5. Stringを使用してバーコードを読む

.NETバーコードリーダーライブラリを使用すると、QRコードやバーコード画像を簡単に読み取ることができます。 Readメソッドは静的な機能で、QRコード画像をスキャンし、QRコードとバーコードをテキストにデコードします。 ビットマップ、PNGファイル、JPEG、TIFFなど、様々な種類の画像ファイルを受け入れます。

このBarcodeResultとして取得します。 もしコードによって画像ファイルが認識されない場合、nullが返されます。

BarcodeResultには以下の値があります:

  • バーコードタイプ
  • テキスト
  • バイナリ値

BarcodeTypeはenumデータ型で、指定された入力画像のバーコードのタイプを返します。 IronBarcodeでは二十二種類のバーコードタイプがサポートされています。 与えられた入力画像に適用されたバーコードの種類が返されます。

ValueとtextもBarcodeResultで利用可能なオブジェクトタイプの値です。 値とテキストの両方が文字列データタイプであり、バーコードの文字列値を返します。 ReadメソッドはQRコードとバーコードを読み取り、指定されたバーコード画像の文字列値をvalue/textに取得します。 バイナリ値はバイトデータタイプであり、指定された画像のバイトを返します。 以下は、任意 for .NET Windowsフォームまたは.NETスタンダードアプリケーションで使用できるQRコードです。

// Read a barcode from an image file
BarcodeResult result = BarcodeReader.Read("test.bmp");
// Check if the result is not null and matches the expected text
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success");
}
// Read a barcode from an image file
BarcodeResult result = BarcodeReader.Read("test.bmp");
// Check if the result is not null and matches the expected text
if (result != null && result.Text == "https://ironsoftware.com/csharp/barcode")
{
    System.Console.WriteLine("Success");
}
' Read a barcode from an image file
Dim result As BarcodeResult = BarcodeReader.Read("test.bmp")
' Check if the result is not null and matches the expected text
If result IsNot Nothing AndAlso result.Text = "https://ironsoftware.com/csharp/barcode" Then
	System.Console.WriteLine("Success")
End If
$vbLabelText   $csharpLabel

上記のコードは、.NETバーコードリーダーライブラリを使用してQRコードやバーコードを読み取る方法を示しています。 このコードはシステムからBitmapオブジェクトへのファイルのマッピングを行うのに簡単に使用できます。 また、画像からQRコード/バーコードをデコードし、結果をオブジェクトに表示します。 以下では、エンコードされたデータをスキャンするためのコードに提供されたQRコード/バーコードを示します。

C# QRコードリーダー(ステップバイステップチュートリアル)、図4:バーコード入力 バーコード入力

6. TIFFイメージから複数のバーコードを読み取る

.NETバーコードリーダーコントロールは、同じReadメソッドを使用して画像ファイルから複数のQRコード/バーコードを読み取ることを可能にし、とても簡単に使用できます。

以下は、画像から複数のQRコードを読み取るためのサンプルコードです:

// Configure barcode reader options
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    ExpectBarcodeTypes = BarcodeEncoding.Code128,
    ExpectMultipleBarcodes = true,
};

// Read multiple barcodes from a TIFF image
BarcodeResult[] multiFrameResults = BarcodeReader.Read("Multiframe.tiff", options);
// Configure barcode reader options
BarcodeReaderOptions options = new BarcodeReaderOptions()
{
    ExpectBarcodeTypes = BarcodeEncoding.Code128,
    ExpectMultipleBarcodes = true,
};

// Read multiple barcodes from a TIFF image
BarcodeResult[] multiFrameResults = BarcodeReader.Read("Multiframe.tiff", options);
' Configure barcode reader options
Dim options As New BarcodeReaderOptions() With {
	.ExpectBarcodeTypes = BarcodeEncoding.Code128,
	.ExpectMultipleBarcodes = True
}

' Read multiple barcodes from a TIFF image
Dim multiFrameResults() As BarcodeResult = BarcodeReader.Read("Multiframe.tiff", options)
$vbLabelText   $csharpLabel

上記のコードでは、TIFF QRコード画像からQRコードが抽出されています。 .NETバーコードリーダーはシステムから画像をスキャンし、結果を配列として返します。 上記のコードでは、Code128のバーコードだけがスキャンされています。 画像上に他のバーコードがある場合、それらは無視されます。

7. PDFからのQRコードおよびバーコードの読み取り

このセクションでは、PDFドキュメントからQRコードを読み取る方法を示しています。 QRコードライブラリは、利用可能なすべてのページおよびファイルに対してすべての利用可能なQRコードをスキャンするか、特定のバーコードタイプに焦点を当てることができます。 IronBarcodeを使用する場合、標準バーコードリーダーに必要なすべてのDLLがライブラリによって提供されているため、.NETプロジェクト参照として他のDLLを含める必要はありません。

以下は、PDFからQRコード/バーコードを読み取るために使用できるサンプルコードです。

// Read barcodes from each page of a PDF document
PagedBarcodeResult[] pagedResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Process results for each page
foreach (PagedBarcodeResult pageRes in pagedResults)
{
    int pageNumber = pageRes.PageNumber;
    string value = pageRes.Value;
    Bitmap img = pageRes.BarcodeImage;
    BarcodeEncoding barcodeType = pageRes.BarcodeType;
    byte[] binary = pageRes.BinaryValue;
    Console.WriteLine(pageRes.Value);
}
// Read barcodes from each page of a PDF document
PagedBarcodeResult[] pagedResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Process results for each page
foreach (PagedBarcodeResult pageRes in pagedResults)
{
    int pageNumber = pageRes.PageNumber;
    string value = pageRes.Value;
    Bitmap img = pageRes.BarcodeImage;
    BarcodeEncoding barcodeType = pageRes.BarcodeType;
    byte[] binary = pageRes.BinaryValue;
    Console.WriteLine(pageRes.Value);
}
' Read barcodes from each page of a PDF document
Dim pagedResults() As PagedBarcodeResult = BarcodeReader.ReadPdf("MultipleBarcodes.pdf")
' Process results for each page
For Each pageRes As PagedBarcodeResult In pagedResults
	Dim pageNumber As Integer = pageRes.PageNumber
	Dim value As String = pageRes.Value
	Dim img As Bitmap = pageRes.BarcodeImage
	Dim barcodeType As BarcodeEncoding = pageRes.BarcodeType
	Dim binary() As Byte = pageRes.BinaryValue
	Console.WriteLine(pageRes.Value)
Next pageRes
$vbLabelText   $csharpLabel

上記はPDFファイルからQRコード/バーコードを読み取るための簡単なReadPdfメソッドのサンプルコードです。 各バーコードとそのタイプに関する詳細な結果を提供することもできます。

結論

.NETバーコードリーダーは、簡単なステップでQRコードを読み取ったり、QRコードやバーコードをデコード/作成したりする簡単でシンプルな方法を提供します。 IronBarcode DLLは.NET Windows Formsアプリケーション、モバイルアプリ、Webアプリケーション、MAUI、およびBlazorで、.NET Frameworkまたは.NET Standardを使用して利用可能です。 IronBarcodeに関する詳細な情報は、公式ドキュメントページをご覧ください。 IronBarcodeは無料トライアルキーを提供しています。また、現在、Iron Softwareからの5つの製品を2つの価格で購入することができます。

ライセンスページでさらなる情報をご覧ください。

また、zipファイルプロジェクトをダウンロードすることもできます。

よくある質問

C#でQRコードを読むことはできますか?

IronBarcode NuGetパッケージをVisual Studioにインストールし、必要な参照を追加して、BarcodeReaderクラスを利用することで、IronQRライブラリを使用してC#でQRコードを読むことができます。

Visual StudioでQRコード読み取りプロジェクトを開始する手順は?

Visual StudioでQRコード読み取りプロジェクトを開始するには、新しいプロジェクトを作成し、IronBarcode NuGetパッケージをインストールし、必要な参照を追加して、BarcodeReaderクラスを使用して各種ソースからQRコードを読み取ります。

画像から複数のQRコードを読み取ることはできますか?

はい、IronQRライブラリは、オプションを設定して複数のコードに対応するReadメソッドを使用して、単一イメージから複数のQRコードを読み取ることができます。

C#でPDFドキュメントからQRコードを抽出する方法は?

PDFドキュメントにQRコードをスキャンして各ページから詳細な結果を取得するために、IronQRライブラリのReadPdfメソッドを使用できます。

C#でQRコード読み取りのカスタマイズオプションは何ですか?

IronQRは、クロップ領域の設定、マルチスレッドの有効化、機械学習モデルの精度の調整などのカスタマイズオプションを提供し、QRコード読み取りのパフォーマンスを向上させます。

IronQRは商用アプリケーションに適していますか?

はい、IronQRは商用.NETアプリケーション向けに設計されており、信頼性と効率性の面で優れたQRコード読み取り機能を提供します。

IronQRを使用したQRコード読み取りをサポートする環境は?

IronQRは、Windowsフォームアプリケーション、モバイルアプリ、ウェブアプリケーション、MAUI、Blazorなど、.NET Frameworkまたは.NET Standardを使用するさまざまな.NET環境をサポートしています。

IronQRの使用に関するライセンス情報はどこで確認できますか?

IronQRの使用に関するライセンス情報については、Iron Softwareのウェブサイトのライセンスセクションをご覧ください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね