チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション

現在、多くの業務アプリケーションでは ASP.NET 環境で QR コードやバーコードをスキャン するニーズが高まっています。チケット認証や決済、在庫管理などで、ASP.NET の QR コードスキャナーやバーコード読み取り機能を導入すると、Web/エンタープライズシステムの効率と精度が大きく向上します。
本チュートリアルでは、Spire.Barcode for .NET を使用し、C# で ASP.NET にバーコードスキャン機能を実装する手順を解説します。画像アップロードから QR/各種バーコードの読み取りまでをカバーし、高い認識精度と既存プロジェクトへの容易な統合を実現します。
ガイド構成
ステップ 1:プロジェクトの作成
スキャン機能の土台となる ASP.NET Core Razor Pages プロジェクトを作成します。以下のコマンド(または Visual Studio での作成)を使用します。
dotnet new webapp -n QrBarcodeScanner
cd QrBarcodeScanner
ステップ 2:Spire.Barcode for .NET のインストール
幅広いバーコード形式をデコードできる Spire.Barcode for .NET の NuGet パッケージをインストールします。NuGet パッケージ マネージャーから検索するか、次のコマンドを実行します。
dotnet add package Spire.Barcode
Spire.Barcode for .NET は、QR コードに加え Code128、EAN-13、Code39 など多数の形式をサポートします。追加の画像処理ライブラリは不要で、ASP.NET Core へ簡単に組み込めます。対応形式の一覧は BarcodeType API リファレンス を参照してください。
小規模用途には Free Spire.Barcode for .NET も利用できます。
信頼性の高いスキャン機能は、次の 2 要素で構成します。
まずバックエンド実装でスキャン処理を確実に動かし、その後最小構成の Razor Pages フロントエンドに接続します。
アップロードファイルをメモリに読み込み、Spire.Barcode で処理します(MemoryStream またはファイルパスのいずれも可)。スキャン結果は配列で返却されます。形式ごとの分岐は不要で、QR/各種バーコードを一括認識できます。
Index.cshtml.cs
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Spire.Barcode;
public class IndexModel : PageModel
{
[BindProperty]
public IFormFile Upload { get; set; } // アップロードされたファイル
public string Result { get; set; } // スキャン結果
public string UploadedImageBase64 { get; set; } // プレビュー用 Base64 文字列
public void OnPost()
{
if (Upload != null && Upload.Length > 0)
{
using (var ms = new MemoryStream())
{
// ファイルをメモリに読み込む
Upload.CopyTo(ms);
// HTML <img> 表示用に Base64 へ変換
UploadedImageBase64 = "data:" + Upload.ContentType + ";base64," +
Convert.ToBase64String(ms.ToArray());
// ストリーム位置を先頭に戻す
ms.Position = 0;
// バーコード/QR コードをスキャン
try
{
string[] scanned = BarcodeScanner.Scan(ms);
Result = scanned != null && scanned.Length > 0
? string.Join(", ", scanned)
: "コードが検出されませんでした。";
}
catch (Exception ex)
{
Result = "スキャン中にエラーが発生しました: " + ex.Message;
}
}
}
}
}
主なクラスとメソッド
BarcodeScanner:QR/バーコードをデコードする静的クラス
BarcodeScanner.Scan(Stream imageStream):ストリームから直接スキャンし、検出文字列の配列を返します(1 枚の画像内に複数コードがある場合も対応)。
補助メソッド(任意)
要件に応じて使い分けできます。
以下は、画像をアップロードしてスキャン結果を表示する簡易 UI です。アップロード後にプレビューと認識結果を表示し、ワンクリックでコピーできます。検証を素早く行えるよう、最低限のスタイルにしています。
Index.cshtml
@page
@model IndexModel
@{
ViewData["Title"] = "QR & バーコードスキャナー";
}
<div style="max-width:420px;margin:40px auto;padding:20px;border:1px solid #ccc;border-radius:8px;background:#f9f9f9;">
<h2 style="font-size:1.5rem;">QR & バーコードスキャナー</h2>
<form method="post" enctype="multipart/form-data" id="uploadForm">
<input type="file" name="upload" accept="image/*" required onchange="this.form.submit()" style="margin:10px 0;" />
</form>
@if (!string.IsNullOrEmpty(Model.UploadedImageBase64))
{
<div style="margin-top:15px;text-align:center;">
<img src="@Model.UploadedImageBase64" style="width:300px;height:300px;object-fit:contain;border:1px solid #ddd;background:#fff;" />
</div>
}
@if (!string.IsNullOrEmpty(Model.Result))
{
<div style="margin-top:15px;padding:10px;background:#e8f5e9;border-radius:6px;">
<b>スキャン結果:</b>
<p id="scanText">@Model.Result</p>
<button type="button" onclick="navigator.clipboard.writeText(scanText.innerText)" style="background:#28a745;color:#fff;padding:6px 10px;border:none;border-radius:4px;">コピー</button>
</div>
}
</div>
以下は、QR コードと Code128 バーコードの両方を認識した後の画面イメージです。結果表示とワンクリックコピーが利用できます。

この ASP.NET Core アプリは、アップロード画像から QR コードおよび各種バーコードをスキャンできます。コード生成が必要な場合は、ASP.NET Core で QR コードを生成する方法 も参照してください。
アプリを実行したら、次のような画像で動作確認を行います。
認識がうまくいかない場合のチェックポイント:
回帰テスト向けに、サンプルの QR/バーコード画像ライブラリを小規模に用意しておくと便利です。
本チュートリアルのスキャンロジックは アプリ種別に依存しません。画像の受け渡し方法だけを変えれば、以下のような環境でも同じ BarcodeScanner.Scan() を再利用できます。
例:最小構成の ASP.NET Core Web API HTTP POST で画像ファイルを受け取り、JSON で結果を返します。
[ApiController]
[Route("api/[controller]")]
public class ScanController : ControllerBase
{
[HttpPost]
public IActionResult Scan(IFormFile file)
{
if (file == null) return BadRequest("No file uploaded");
using var ms = new MemoryStream();
file.CopyTo(ms);
ms.Position = 0;
string[] results = BarcodeScanner.Scan(ms);
return Ok(results);
}
}
例:コンソールアプリ ローカル画像をスキャンして結果を出力します。
string[] result = BarcodeScanner.Scan(@"C:\path\to\image.png");
Console.WriteLine(string.Join(", ", result));
この柔軟性により、既存/新規の .NET プロジェクトへ QR/バーコードスキャンを素早く追加できます。
本記事では、Spire.Barcode for .NET を用いて ASP.NET Core に QR/バーコードスキャン機能を実装する手順 を解説しました。画像を受け取り、デコードし、結果を表示するまでの流れをシンプルに構築でき、EC、チケット、ドキュメント認証など多様な業務シナリオに応用できます。
高度な要件に対しては、認識処理のカスタマイズや複数画像形式・バーコード種類への詳細対応など、追加機能も利用可能です。すべての高度機能を解放するには、無償評価ライセンスの申請 を行ってください。
今すぐ Spire.Barcode for .NET をダウンロード して、ASP.NET 向けのバーコードスキャン機能を実装しましょう。

QRコードは、認証や非接触決済、URL・連絡先情報の共有など、現代のWebアプリケーションに欠かせない要素となっています。 ASP.NET を使った開発においても、C#でQRコードを生成する機能は、実用的かつ頻繁に求められる機能の一つです。
本記事では、Spire.Barcode for .NET を用いて、ASP.NET(Razor Pagesベース)でQRコードを生成する方法を、実際のコードを交えながら丁寧に解説します。紹介する手法は、MVCやWeb API、Web Formsといった他のASP.NETプロジェクトにも応用可能です。
目次
必要な環境:
以下の環境が必要です:
ライブラリのインストール:
NuGet パッケージマネージャーコンソールから以下のコマンドでインストールします:
Install-Package Spire.Barcode
Spire.Barcode は、外部APIを使用せずにQRコードをメモリ上で生成できる、完全な.NET向けバーコードライブラリです。小規模なプロジェクトであれば、Free Spire.Barcode for .NET の利用も可能です。
このセクションでは、ASP.NET Core Razor Pages プロジェクトを使って、QRコード生成機能を実装する方法を解説します。
以下は、Index.cshtml.cs ファイルに記述するC#コードです。ユーザーの入力を受け取り、Spire.Barcodeを使ってQRコードを生成し、それをBase64文字列としてフロントエンドに返します。
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Spire.Barcode;
public class IndexModel : PageModel
{
[BindProperty]
public string InputData { get; set; }
public string QrCodeBase64 { get; set; }
public void OnPost()
{
if (!string.IsNullOrWhiteSpace(InputData))
{
QrCodeBase64 = GenerateQrCodeBase64(InputData);
}
}
private string GenerateQrCodeBase64(string input)
{
var settings = new BarcodeSettings
{
Type = BarCodeType.QRCode, // QRコードの種類
Data = input, // エンコードするメインデータ
Data2D = input, // 2次元バーコード用に必要(通常は Data と同じ)
QRCodeDataMode = QRCodeDataMode.Byte, // バイトモード(多言語コンテンツに対応)
QRCodeECL = QRCodeECL.M, // 中レベルの誤り訂正(15%)
X = 3, // モジュールサイズ(画像の寸法に影響)
ShowText = false, // デフォルトのバーコードテキストを非表示
ShowBottomText = true, // カスタムの下部テキストを表示
BottomText = input // QRコードの下に表示するテキスト
};
var generator = new BarCodeGenerator(settings);
using var ms = new MemoryStream();
var qrImage = generator.GenerateImage();
qrImage.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return Convert.ToBase64String(ms.ToArray());
}
}
ポイント:
BarcodeSettings でQRコードの設定(内容、誤り訂正レベル、表示文字など)を定義GenerateImage() でQRコード画像を生成以下は、Index.cshtml のマークアップです。入力フォーム、QRコードの表示、画像のダウンロードリンクを含みます。
@page
@model IndexModel
@{
ViewData["Title"] = "QRコードジェネレーター";
}
<h2>QRコードジェネレーター</h2>
<form method="post">
<label for="InputData">テキストまたはURLを入力してください:</label>
<input type="text" id="InputData" name="InputData" style="width:300px;" required />
<button type="submit">QRコードを生成</button>
</form>
@if (!string.IsNullOrEmpty(Model.QrCodeBase64))
{
<div style="margin-top:20px">
<img src="data:image/png;base64,@Model.QrCodeBase64" alt="QRコード" />
<br />
<a href="data:image/png;base64,@Model.QrCodeBase64" download="qrcode.png"
style="
display: inline-block;
margin-top: 10px;
padding: 8px 16px;
background-color: #0078D7;
color: white;
text-decoration: none;
border-radius: 4px;
font-weight: 600;
cursor: pointer;
">
QRコードをダウンロード
</a>
</div>
}
QRコードは Base64 形式の data: URI を使ってブラウザに直接表示され、ダウンロードも可能です。
実行例は以下の通りです:

QRコードのスキャン機能が必要な場合は、C#でQRコードを読み取る方法をご参照ください。
BarcodeSettings クラスを使って、QRコードの見た目や動作を柔軟に調整できます:
| プロパティ | 機能説明 | 例 |
|---|---|---|
| QRCodeDataMode | テキストのエンコードモード | QRCodeDataMode.Byte |
| QRCodeECL | 誤り訂正レベル | QRCodeECL.H |
| X | モジュールのサイズ(解像度) | settings.X = 6 |
| ImageWidth/Height | 画像の幅・高さを指定 | settings.ImageWidth = 300 |
| ForeColor | 色を変更 | settings.ForeColor = Color.Blue |
| ShowText | バーコードの文字を表示/非表示 | settings.ShowText = false |
| BottomText | カスタムテキストを下部に表示 | settings.BottomText = "スキャン" |
| ShowBottomText | 下部テキストの表示切り替え | settings.ShowBottomText = true |
| QRCodeLogoImage | ロゴ画像を中央に挿入 | settings.QRCodeLogoImage = Image.FromFile("logo.png") |
詳細な仕様については BarcodeSettings APIドキュメント をご覧ください。
このQRコード生成ロジックは、Razor Pages以外のASP.NETプロジェクトにも簡単に応用できます。
コントローラーに以下のようなアクションを追加します:
public class QrController : Controller
{
public ActionResult Generate(string data)
{
var settings = new BarcodeSettings
{
Type = BarCodeType.QRCode,
Data = data,
QRCodeDataMode = QRCodeDataMode.Byte,
QRCodeECL = QRCodeECL.M,
X = 5
};
var generator = new BarCodeGenerator(settings);
using var ms = new MemoryStream();
generator.GenerateImage().Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return File(ms.ToArray(), "image/png");
}
}
以下のように GET エンドポイントを作成できます:
[ApiController]
[Route("api/[controller]")]
public class QrApiController : ControllerBase
{
[HttpGet("generate")]
public IActionResult GetQr(string data)
{
var settings = new BarcodeSettings
{
Type = BarCodeType.QRCode,
Data = data
};
var generator = new BarCodeGenerator(settings);
using var ms = new MemoryStream();
generator.GenerateImage().Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return File(ms.ToArray(), "image/png");
}
}
React や Vue などのフロントエンドからAPIとして呼び出すのに最適です。
コードビハインドで以下のように処理可能です:
protected void btnGenerate_Click(object sender, EventArgs e)
{
var settings = new BarcodeSettings
{
Type = BarCodeType.QRCode,
Data = txtInput.Text
};
var generator = new BarCodeGenerator(settings);
using var ms = new MemoryStream();
generator.GenerateImage().Save(ms, System.Drawing.Imaging.ImageFormat.Png);
imgQR.ImageUrl = "data:image/png;base64," + Convert.ToBase64String(ms.ToArray());
}
QRコード画像を <asp:Image> コントロールに埋め込んで表示します。
Spire.Barcode for .NET を使えば、Razor Pages、MVC、Web API、Web Forms など、すべての ASP.NET プロジェクトにおいて、QRコードの生成とカスタマイズが簡単に実装できます。
画像をBase64文字列で扱うことで、ファイル保存や管理が不要になり、展開や保守もシンプルになります。 認証システム、チケット発行、連絡先共有といったさまざまな用途に対応できる、信頼性の高いアプローチです。
Q: 日本語やアラビア語などの文字に対応していますか?
A: はい。QRCodeDataMode.Byte を使用すればUnicode対応可能です。
Q: QRコードのサイズや色は変更できますか?
A: 可能です。X や ForeColor、ImageWidth などのプロパティを使って調整できます。
Q: このソリューションは完全にオフラインで動作しますか? A: はい。外部APIへの接続なしでローカルで完結します。
Q: Web API経由でQRコード生成機能を提供できますか? A: はい。ASP.NET Web API を使って他のアプリに画像を提供できます。

QR コードは、ユーザー認証、モバイル決済、商品パッケージ、イベントチケットなど、現代の多くのアプリケーションで広く利用されています。これらのシーンにおいて、特にスキャン画像やアップロードファイルを処理する際、C# で QR コードを読み取るニーズは高まっています。
そのためには、精度が高く、実装が簡単なデコード手法が必要です。本チュートリアルでは、C# を使って画像から QR コードを読み取るシンプルな方法を紹介します。セットアップも少なく、簡潔に統合できます。
目次
まず、QR コードの読み取りに対応した .NET 向けバーコードライブラリを使用します。ここでは、画像ファイルやストリームから QR コードを読み取る簡単なAPIを提供する Spire.Barcode for .NET を使用します。
以下のコマンドで NuGet からインストールできます:
Install-Package Spire.Barcode
基本的な用途であれば、Free Spire.Barcode for .NET も利用可能です:
Install-Package FreeSpire.Barcode
デモとして、Visual Studio で C# コンソールアプリを作成します:
C# で画像ファイルから QR コードを読み取るには、ライブラリが提供する静的メソッド BarcodeScanner.Scan() を使用します。このメソッドは画像のパスと BarCodeType を引数として受け取り、指定したバーコードタイプ(ここでは QR コード)に一致するすべての結果を返します。
この方法は、JPG、PNG、EMF 形式の画像に対応しており、デスクトップアプリやファイルアップロードを処理するバックエンドサービスに最適です。
using Spire.Barcode;
class Program
{
static void Main(string[] args)
{
// QRコード画像を読み込む
string imagePath = @"C:\qr-code.png";
// QRコードをスキャン
string[] results = BarcodeScanner.Scan(imagePath, BarCodeType.QRCode);
// 結果を表示
foreach (string result in results)
{
Console.WriteLine("QRコードの内容: " + result + "\n");
}
}
}
QR コード画像と、C#による読み取り結果:

Web API やモダンなアプリケーションでは、画像を Stream として処理する場面がよくあります。たとえば、アップロードファイルやクラウドストレージからの読み取りなどです。
BarcodeScanner.Scan() メソッドは Stream を直接受け取ることもでき、Bitmap に変換せずにメモリストリームから QR コードを読み取れます。
using Spire.Barcode;
using System.IO;
class Program
{
static void Main(string[] args)
{
using (FileStream fs = new FileStream(@"C:\qr-code.png", FileMode.Open, FileAccess.Read))
{
// ストリームから直接QRコードを読み取る
string[] results = BarcodeScanner.Scan(fs, BarCodeType.QRCode, false);
foreach (string result in results)
{
Console.WriteLine("QRコードの内容: " + result);
}
}
}
}
この方法は、WPF や ASP.NET Core アプリでメモリ上で画像を扱う場合に特に便利です。
関連チュートリアル: C# で PDF からバーコードを読み取る方法
実際のアプリケーションでは、画像品質や入力の問題により、QR コードの認識に失敗することもあります。以下は、C# での認識精度向上とエラー対策のベストプラクティスです。
try-catch ブロックで処理を囲み、失敗時の例外処理やユーザー通知を行います:
try
{
string[] results = BarcodeScanner.Scan(imagePath, BarCodeType.QRCode);
if (results.Length == 0)
{
Console.WriteLine("QRコードが見つかりませんでした。");
}
else
{
Console.WriteLine("QRコード: " + results[0]);
}
}
catch (Exception ex)
{
Console.WriteLine("QRコードのデコード中にエラーが発生しました: " + ex.Message);
}
画像内の QR コードの正確な位置(切り抜き、マーク表示、アノテーション用途など)が必要な場合は、ScanInfo() メソッドを使って座標情報を取得できます:
BarcodeInfo[] results = BarcodeScanner.ScanInfo(imagePath, BarCodeType.QRCode);
foreach (BarcodeInfo result in results)
{
Console.WriteLine("データ: " + result.DataString);
Console.WriteLine($"座標: " + string.Join(",", result.Vertexes.Select(p => $"({p.X},{p.Y})")) + "\n");
}
これにより、各 QR コードのデータと頂点座標(四隅)が取得できます。
読み取り結果:

Spire.Barcode for .NET ライブラリの BarcodeScanner.Scan() メソッドを使用することで、画像ファイルやストリームから簡単に QR コードを読み取ることができます。
画像ファイルのパスを渡すか、WPF や Web アプリであればストリームとして読み込んでスキャナーに渡します。すべての QR コードが自動的にデコードされます。
はい、画像パスを Scan() メソッドに渡すだけで、対応しているすべてのバーコードタイプを自動で読み取れます。特定の種類(例:QR コードや Code128)のみに限定する場合は、BarCodeType を第二引数で指定します。
Spire.Barcode for .NET は、使いやすさと多様なフォーマット対応、API のシンプルさから人気があります。無料・商用いずれの用途にも対応しています。
Spire.Barcode for .NET を使用すれば、C# での QR コード読み取りは数行のコードで実装可能です。画像ファイルにもストリームにも対応しており、デスクトップ、サーバーサイド、WPF アプリケーションでも安定して動作します。最小限のセットアップで高性能な読み取り処理が行えます。
QR コードの生成、ドキュメントへの統合、リアルタイムスキャンなどへの応用も可能です。
💡すべてのバーコード読み取り機能を試したい方は、
無料の一時ライセンスを申請して、Spire.Barcode for .NET の全機能を体験してください。

C#でPDFファイルからバーコードを読み取ることは、多くのビジネスワークフローで実用的なニーズです。特にスキャン済みの書類やデジタルフォームを自動処理する場合に頻繁に使用されます。物流、金融、医療、製造などの分野では、PDF内に画像として埋め込まれたバーコード、またはベクターグラフィックスとして描かれたバーコードが含まれていることがよくあります。
本記事では、C# を使用して PDF からバーコードを読み取るための 2 つの実践的な方法を紹介します。1 つは PDF ページに埋め込まれた画像を抽出してスキャンする方法、もう 1 つはページ全体を画像としてレンダリングし、その画像からバーコードを認識する方法です。いずれの方法も、1次元バーコードと2次元バーコードの両方に対応しています。
目次
C#でPDFからバーコードを認識するには、以下の環境を用意してください:
NuGet パッケージマネージャーで以下のコマンドを実行:
Install-Package Spire.Barcode
Install-Package Spire.PDF
バーコードの格納方法に応じて、以下のいずれかの方法を選んでください。
スキャンされたPDFでは、バーコードは画像として埋め込まれていることが多いため、この方法が効果的です。BarcodeScanner.ScanOne() メソッドを使って画像から1つのバーコードを読み取ることができます。
using Spire.Barcode;
using Spire.Pdf;
using Spire.Pdf.Utilities;
using System.Drawing;
namespace ReadPDFBarcodeByExtracting
{
class Program
{
static void Main(string[] args)
{
// PDFファイルを読み込む
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Sample.pdf");
// ページの画像情報を取得する
PdfPageBase page = pdf.Pages[0];
PdfImageHelper imageHelper = new PdfImageHelper();
PdfImageInfo[] imagesInfo = imageHelper.GetImagesInfo(page);
// ページ内の画像を順に処理してバーコードを読み取る
int index = 0;
foreach (PdfImageInfo imageInfo in imagesInfo)
{
Image image = imageInfo.Image;
string scanResult = BarcodeScanner.ScanOne((Bitmap)image);
Console.WriteLine($"第 {index + 1} 個の画像のスキャン結果:\n" + scanResult + "\n");
index++;
}
}
}
}
以下は、方法①(画像抽出)でのスキャン結果イメージです:

🔍 おすすめのケース:スキャンされたPDFや、バーコードが画像として含まれている場合。
PDF内のバーコードが画像ではなく、ベクター形式で描画されている場合には、この方法が有効です。BarcodeScanner.Scan() メソッドを使えば、1つの画像から複数のバーコードを一括で読み取ることが可能です。
using Spire.Barcode;
using Spire.Pdf;
using System.Drawing;
namespace ReadPDFBarcodeByExtracting
{
class Program
{
static void Main(string[] args)
{
// PDFファイルを読み込む
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Sample.pdf");
// ドキュメントの各ページを処理し、ページを画像として保存
for (int i = 0; i < pdf.Pages.Count; i++)
{
Image image = pdf.SaveAsImage(i);
// 画像内のすべてのQRコード情報をスキャンして認識する
string[] scanResults = BarcodeScanner.Scan((Bitmap)image);
for (int j = 0; j < scanResults.Length; j++)
{
Console.WriteLine($"第 {i + 1} ページの第 {j + 1} 番目のバーコードのスキャン結果:\n" + scanResults[j] + "\n");
}
}
}
}
}
以下は、方法②(ページ全体のレンダリング)によるスキャン結果の例です:

🔍 おすすめのケース:PDF内のバーコードが画像ではなく描画されたコンテンツである場合。
| ケース | 推奨される方法 |
|---|---|
| スキャンされたページ | 埋め込み画像の抽出 |
| デジタルPDF・描画バーコード | ページ全体の画像化 |
| 混在・不明な構造 | 両方を試すのがおすすめ |
構造が不明なPDFには、両方の方法を併用することでより確実な認識が可能です。
Q: 複数ページのPDFでも対応できますか?
A: はい、すべてのページをループ処理することで対応可能です。
Q: 1ページに複数のバーコードがある場合は?
A: BarcodeScanner.Scan() メソッドを使えば、複数のバーコードを一括で検出できます。
Q: 解像度を上げれば認識精度は向上しますか?
A: はい。たとえば、300 DPI以上で画像化すると、小さなバーコードでも認識精度が向上します。SaveAsImage(int, PdfImageType, int, int) を使用してDPIを指定できます。
Q: 無料で使用できますか?
A: はい。 Free Spire.Barcode for .NET と Free Spire.PDF for .NET の組み合わせで基本的なバーコード読み取りが可能です。ただし、無料版には機能制限があります。商用利用や高機能が必要な場合は、無料トライアルライセンスを申請して評価することもできます。
C# を使って PDF ファイルからバーコードを読み取るには、画像抽出とページレンダリングという 2 つの方法があり、それぞれのPDF形式に応じて柔軟に対応できます。Spire.Barcode と Spire.PDF を活用すれば、効率的かつ確実なバーコード認識が実現できます。