C#でPDFからバーコードを読む方法

C#でPDFからBarCodeを読み取る方法</#35;

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

ReadPdfメソッドを使用して、画像に変換せずにPDFドキュメントから直接バーコードを読み取ることができ、わずか1行のコードで実現します。

PDF 文書から BarCode を読み取るとは、PDF ページ内のバーコードを検出してデコードすることです。 この技術は、デジタル文書からエンコードされた情報を直接抽出するため、印刷された BarCode を手作業でスキャンする必要がありません。 このツールは、請求書、出荷ラベル、レポート、および BarCode データを含むその他の文書を処理するワークフローを自動化します。

クイックスタート: PDFから直接バーコードを読み取る

ReadPdfメソッドを使用して、画像に変換せずにPDFからバーコードを読み取ります。 1行のコードでBarCodeデータを抽出し、必要に応じて高度なオプションを追加します。

  1. IronBarcode をNuGetパッケージマネージャでインストール

    PM > Install-Package BarCode
  2. このコード スニペットをコピーして実行します。

    var results = IronBarCode.BarcodeReader.ReadPdf("invoice.pdf");
  3. 実際の環境でテストするためにデプロイする

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

    arrow pointer

PDFバーコードを読み取るための基本的な手順は何ですか?

  1. バーコードファイルを処理するためのバーコードライブラリをインストールします。 プラットフォーム固有のインストールについては、NuGetパッケージガイドを確認してください。
  2. 必要に応じてPdfBarcodeReaderOptionsを作成します。
  3. ReadPdfメソッドを使用して、PDFからバーコードを読み取ります。
  4. BarcodeReaderOptionを使用して追加のバーコード読み取りオプションを指定します。
  5. バーコードの値を抽出します。

直接 PDF ドキュメントから BarCode を読み取るにはどうすればよいですか?

IronBarcodeは、画像に変換せずにPDFドキュメントから直接バーコードを読み取ります。 すべての機能の包括的な概要については、機能のページをご覧ください。 次のPDF入力タイプを受け入れるBarcodeReader.ReadPdf()メソッドを使用します:

  • byte[] array: バイト配列としてのPDFドキュメント。
  • IEnumerable<Byte[]>: コレクション内に格納されたバイト配列としてのPDFドキュメント。
  • MemoryStream: MemoryStreamタイプとしてのPDFドキュメント。
  • IEnumerable<Stream>: MemoryStreamのコレクションとしてのPDFドキュメント。 Read Barcode from Streams ガイドを参照してください。
  • String: 文字列またはプロジェクトにコピーされた場合のファイル名としてのPDFドキュメントのパス。
  • IEnumerable<String>: コレクション内に格納されたPDFドキュメントのパス/名前文字列。

PdfBarcodeReaderOptionsも受け入れます。次のセクションで説明します。 PDFドキュメント内のバーコードを読み取るためのBarcodeReader.ReadPdf()の使用方法は次のとおりです:

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-pdf-1.cs
using IronBarCode;
using System;
using System.Collections.Generic;

List<String> docs = new List<String>();
docs.Add(@"pdf_a.pdf");
docs.Add(@"pdf_b.pdf");

var myBarcode = BarcodeReader.ReadPdfs(docs);   //can also accept individual PDF document file path as argument

foreach (var value in myBarcode)
{
    Console.WriteLine(value.ToString());
}
Imports IronBarCode
Imports System
Imports System.Collections.Generic

Private docs As New List(Of String)()
docs.Add("pdf_a.pdf")
docs.Add("pdf_b.pdf")

Dim myBarcode = BarcodeReader.ReadPdfs(docs) 'can also accept individual PDF document file path as argument

For Each value In myBarcode
	Console.WriteLine(value.ToString())
Next value
$vbLabelText   $csharpLabel

PDFファイルのパス文字列をBarcodeReader.ReadPdf()に渡してバーコード値を読み取ります。 さまざまなソースからバーコードを読み取る例については、Reading Barcodes in C# / .NET チュートリアルをご覧ください。 PDFで見つかったすべてのバーコード値を印刷するには、ToString()を呼び出します。 この例では、PDF文書名のコレクションをメソッドの引数として使用する例も示します。

一度に複数のPDFを読むにはどうすればよいですか?

ReadPdfsメソッドを提供します。 この方法では、PDFのリストから効率的にBarCodeを抽出します。 ドキュメント内で複数の BarCode を処理するには、Read Multiple Barcodes のガイドを参照してください。

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-pdf-read-from-multiple-pdf.cs
using IronBarCode;
using System;
using System.Collections.Generic;
using System.IO;

// Get all PDF files from a directory and add to list
string folderPath = @"PATH_TO_YOUR_FOLDER";
List<string> docs = new List<string>(Directory.GetFiles(folderPath, "*.pdf"));

// Read barcodes from all PDFs
var docResult = BarcodeReader.ReadPdfs(docs);

// Print results
foreach (var doc in docResult)
{
    foreach (var item in doc)
    {
        Console.WriteLine("Barcode " + item.ToString() + " found at page " + item.PageNumber);
    }
}
Imports IronBarCode
Imports System
Imports System.Collections.Generic
Imports System.IO

' Get all PDF files from a directory and add to list
Dim folderPath As String = "PATH_TO_YOUR_FOLDER"
Dim docs As New List(Of String)(Directory.GetFiles(folderPath, "*.pdf"))

' Read barcodes from all PDFs
Dim docResult = BarcodeReader.ReadPdfs(docs)

' Print results
For Each doc In docResult
    For Each item In doc
        Console.WriteLine("Barcode " & item.ToString() & " found at page " & item.PageNumber)
    Next
Next
$vbLabelText   $csharpLabel

このコードは、ディレクトリからすべてのPDFファイルを取得し、それらをReadPdfsを呼び出します。 メソッドは、BarcodeResultsの配列を返します。 結果をループして、各PDFからBarCodeにアクセスします。

どのように PDF BarCode Reader のオプションを設定しますか?

PDFからのバーコード読み取りをPdfBarcodeReaderOptionsで構成します。 すべてのリーダー設定の詳細な説明については、Set PDF BarCode Reader Options の例をご覧ください。 これらのプロパティを調整することで、品質、正確さ、パフォーマンスが向上します。 BarcodeReaderOptionsプロパティを継承し、PDFに特化したオプションを追加します。 PdfBarcodeReaderOptionsをインスタンス化するときにページ番号を指定します:

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-pdf-2.cs
using IronBarCode;
using System.Collections.Generic;

List<int> pageNumber = new List<int>() { 1, 2, 3 };

PdfBarcodeReaderOptions PdfOptions = new PdfBarcodeReaderOptions(pageNumber)  // can also use individual page number as argument
{
    // Properties of PDF Barcode reader options
};
Imports IronBarCode
Imports System.Collections.Generic

Private pageNumber As New List(Of Integer)() From {1, 2, 3}

Private PdfOptions As New PdfBarcodeReaderOptions(pageNumber)
$vbLabelText   $csharpLabel

BarcodeReaderOptionsから継承されたもの以外の追加のプロパティを調べます。

DPI設定はバーコードの読み取りにどのように影響しますか?

PDF文書内のバーコード画像のDPI(Dots Per Inch)を設定します。 これにより、低品質のBarCodeの読み取りが向上します。 整数値を使用してください。 デフォルトのDPIは150です。バーコードが小さかったり、品質が低い場合は、300または600に上げると、より認識されやすくなります。 DPI値が高くなると、処理時間とメモリ使用量が増えます。

ページ番号はいつ指定すべきですか?

特に複数ページのPDFのパフォーマンスを向上させるために、BarCodeを含むページ番号を指定します。 IronBarcodeは、特定のページ番号を指定した場合、バーコードのないページをスキップします。 ページ番号は1ベースです(最初のページは0ではなく1です)。 大きな文書の最適化テクニックについては、読書速度オプションのガイドを参照してください。

パスワードで保護されたPDFをどのように扱えばよいですか?

パスワードを文字列入力として提供することで、暗号化されたPDFファイルを扱うことができます。 IronBarcodeはPDFパスワードを取得できません。 アプリケーションに必要なパーミッションがあり、パスワードが安全に保存されていることを確認してください。

小さな BarCode にはどのような倍率を使用すればよいですか?

画像に変換するときに、幅と高さのスケールファクターを制御してください。 Integer 値を受け付け、デフォルトは 3.5 です。拡大率を高くすると、PDF をズームして小さな BarCode を読みやすくなります。 1インチ未満のBarCodeには、スケールファクター5.0以上を使用してください。 高い尺度がパフォーマンスに影響します。

PDFから高度なバーコードを読み取るにはどうすればよいですか?

プロジェクトでPdfBarcodeReaderOptionsプロパティを適用して、PDFドキュメントからバーコードを読み取る機能を強化します。 バーコードが認識されない場合の追加のトラブルシューティングヒントについては、バーコードが認識されないガイドをご覧ください。

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-pdf-3.cs
using IronBarCode;
using System;
using System.Collections.Generic;

List<int> pageNumber = new List<int>() { 1, 2, 3 };

PdfBarcodeReaderOptions PdfOptions = new PdfBarcodeReaderOptions(pageNumber)
{
    DPI = 150,
    //PageNumbers = pageNumber,      //this property is not needed if page numbers has been specified as the argument in PdfBarcodeReaderOptions
    Password = "barcode",
    Scale = 3.5,
    //properties below are some of the properties inherited from BarcodeReaderOptions
    Speed = ReadingSpeed.Detailed,
    ExpectBarcodeTypes = BarcodeEncoding.Code93,
    ExpectMultipleBarcodes = true
};

var myBarcode = BarcodeReader.ReadPdf(@"pdf_a_filepath.pdf", PdfOptions);
foreach (var value in myBarcode)
{
    Console.WriteLine(value.ToString());
}
Imports IronBarCode
Imports System
Imports System.Collections.Generic

Private pageNumber As New List(Of Integer)() From {1, 2, 3}

Private PdfOptions As New PdfBarcodeReaderOptions(pageNumber) With {
	.DPI = 150,
	.Password = "barcode",
	.Scale = 3.5,
	.Speed = ReadingSpeed.Detailed,
	.ExpectBarcodeTypes = BarcodeEncoding.Code93,
	.ExpectMultipleBarcodes = True
}

Private myBarcode = BarcodeReader.ReadPdf("pdf_a_filepath.pdf", PdfOptions)
For Each value In myBarcode
	Console.WriteLine(value.ToString())
Next value
$vbLabelText   $csharpLabel

プロパティにアクセスし調整するために、変数名でPdfBarcodeReaderOptionsを初期化します。 特定のページに設定を適用するために、初期化時に引数としてページ番号を渡します。 または、PageNumbersプロパティを使用してページ番号を設定します。

ExpectBarcodeTypesのような継承されたプロパティを使用して、パフォーマンスと精度を向上させます。 PDFファイルパスを最初の引数として、構成済みのBarcodeReader.ReadPdf()に渡して適用します。

不完全または破損した BarCode を含む PDF の処理については、PDF 処理中に適用できる 画像補正 機能をご覧ください。

よくある質問

C# で PDF ファイルから BarCode を読み取るには?

IronBarcodeはシンプルなReadPdfメソッドを提供し、PDFドキュメントから直接バーコードを読み取ることができます。たった1行のコードでPDFからバーコードデータを抽出することができます: var results = IronBarCode.BarcodeReader.ReadPdf("invoice.pdf");

バーコードリーダーはどのようなPDF入力を受け付けていますか?

IronBarcodeのBarcodeReader.ReadPdf()メソッドは、バイト配列、バイト配列のコレクション、MemoryStreamオブジェクト、MemoryStreamのコレクション、ファイルパス文字列、ファイルパス文字列のコレクションを含む複数のPDF入力タイプを受け入れます。この柔軟性により、様々なソースからのPDFを扱うことができます。

BarCode を読み取る前に PDF を画像に変換する必要がありますか?

いいえ、IronBarcodeは画像に変換することなく、PDFドキュメントから直接バーコードを読み取ります。このライブラリはPDFファイルをネイティブに処理するため、時間を節約し、バーコードデータの元の品質を保持します。

PDFバーコード読み取りを実装するための基本的な手順は何ですか?

IronBarcodeを使ってPDFからバーコードを読み取るには:1) NuGet経由でバーコードライブラリをインストール、2) 高度な設定のために必要であればPdfBarcodeReaderOptionsを作成、3) BarcodeReaderからReadPdfメソッドを使用、4) オプションでBarcodeReaderOptionを使用して追加の読み取りオプションを指定、5) 結果からバーコード値を抽出。

PDF BarCode 抽出の高度な読み取りオプションを設定できますか?

はい、IronBarcodeはPdfBarcodeReaderOptionsを通して高度な読み取り機能をサポートしています。これにより、特定のユースケースに合わせて検出と精度を最適化するために、特定のパラメータやオプションでBarCode読み取りプロセスをカスタマイズすることができます。

PDF BarCode 読み取りのメリットを享受できるドキュメントのタイプは?

IronBarcodeのPDFバーコード読み取りは、請求書、出荷ラベル、レポート、その他バーコードデータを含むビジネス文書を含むワークフローの自動化に最適です。これにより、印刷されたバーコードを手動でスキャンする必要がなくなり、文書処理が効率化されます。

IronBarcodeはバーコードの外観カスタマイズをサポートしていますか?

はい、IronBarcodeはカラー、サイズ、テキスト注釈を含むバーコードの外観に関する詳細なカスタマイズオプションを提供し、特定のデザイン要件に合わせて調整が可能です。

IronBarcodeはビジネスプロセスの効率向上にどのように役立ちますか?

IronBarcodeは迅速かつ正確なバーコード生成と読み取りを可能にし、手動データ入力エラーの減少、在庫および資産追跡の改善などにより、ビジネスプロセスの効率を向上させます。

プロジェクトにIronBarcodeを実装するために必要なプログラミングスキルは何ですか?

IronBarcodeをプロジェクトに実装するためには、C#プログラミングの基本的な知識があれば十分で、開発者をガイドするための簡単なメソッドと包括的なドキュメントが提供されています。

IronBarcodeは小規模プロジェクトと大規模エンタープライズアプリケーションの両方に適していますか?

IronBarcodeはスケーラブルかつ多用途に設計されており、小規模プロジェクトおよび強力なバーコードソリューションを必要とする大規模エンタープライズアプリケーションの両方に適しています。

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

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package BarCode
サンプルを実行する 文字列が BarCode になるのを見る。