PDFドキュメントからバーコードを読み取る方法

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

によって ハイリル ハシミ ビン オマル

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

  1. バーコードファイルを処理するために、バーコードライブラリをインストールしてください。

  2. 必要に応じてPdfBarcodeReaderOptionsを作成します。

  3. PDFからバーコードを読み取るには、BarcodeReaderReadPdfメソッドを使用します。

  4. BarcodeReaderOption を使用して追加のバーコード読み取りオプションを指定します。

  5. バーコード値の抽出。



    申し訳ありませんが、翻訳するコンテンツのテキストを提供してください。その後、英語から日本語に翻訳いたします。

PDFドキュメントからバーコードを直接読み取る

IronBarcodeは画像からバーコードを読み取る能力に加えて、PDFドキュメントからバーコードを読み取る能力にも優れています。 これにより、ユーザーはPDFドキュメントをIronBarcodeで読み取る前に画像に変換する手間を省くことができます。 PDFドキュメントは画像とは異なり、より複雑です。そのため、異なる読み取り方法を使用する必要があります。それが バーコードリーダー.ReadPdf() method. このメソッドは、以下を含むさまざまな種類のPDFドキュメント入力を受け付けます:

  • バイト[] 配列 バイト配列としてのPDFドキュメント。
  • IEnumerable コレクションに格納されたバイト配列としてのPDFドキュメント。
  • メモリーストリーム : PDF documents as メモリーストリーム type.
  • IEnumerable : PDF documents as collection of メモリーストリーム
  • 文字列 PDFドキュメントのパス文字列。PDFドキュメントがすでにプロジェクトにコピーされている場合、これは文字列で表されるPDFドキュメントの名前になります。
  • IEnumerable<文字列> コレクションに格納されたPDFドキュメントのパス/名前文字列。

上記の入力タイプ以外にも、 バーコードリーダー.ReadPdf() また、受け入れる PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) 次のサブトピックで議論する、より高性能な読み取りについて。 それでは、以下に示すコードスニペットを見てみましょう。 バーコードリーダー.ReadPdf() method to read barcodes in PDF documents.

: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.ReadPdf(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.ReadPdf(docs) 'can also accept individual PDF document file path as argument

For Each value In myBarcode
	Console.WriteLine(value.ToString())
Next value
VB   C#

上記のコードスニペットから、IronBarcodeを使用してバーコードを読み取るためには、PDFドキュメントのファイルパス文字列を単純に追加することができることがわかります。 バーコードリーダー.ReadPdf() method to read the barcode value, and store the result in a variable. PDF ドキュメント内で見つかったすべてのバーコードの値をコンソールに表示したい場合は、次のように使用してください foreach (フォーイーチ) 変数に見つかったすべての要素を繰り返し処理して印刷するためのループ 文字列化() method on them. その上で、上記のコードスニペットは、PDFドキュメント名のコレクションを引数として使用することを示しています。 バーコードリーダー.ReadPdf() .

しかし、PDFドキュメントに含まれているバーコードが読み取れない場合はどうすればよいでしょうか? パフォーマンスが非常に遅い場合はどうすればいいですか? ここは PDFバーコード読み取りの高度化 実施され、そこで私たちは操作します PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) 読み取りの質、精度、パフォーマンスを向上させるため。

PDFバーコードリーダーオプションの設定

画像からバーコードを読み取るのと同様に、PDFドキュメントからバーコードを読み取ることも、バーコードリーダーのプロパティを調整または設定することが可能です。 PdfBarcodeReaderOptions (PDFバーコードリーダーオプション). プロパティの調整 PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) 読むのに非常に役立ちます 品質、正確性、さらにパフォーマンス. 以下のすべての調整可能なプロパティ バーコードリーダーオプション 継承されます PdfバーコードリーダーオプションPDFドキュメント用の追加プロパティも提供します。 最初に、ユーザーは以下を指定することができます ページ番号 または collection of ページ番号s PDF文書から彼らが求める PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) (PDFバーコードリーダーオプション) 適用するには、新しいインスタンスをインスタンス化するときに PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) (PDFバーコードリーダーオプション). 次のコードスニペットはデモンストレーションを行います

: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)
VB   C#

それでは、以下の追加プロパティを見てみましょう Pdfバーコードリーダーオプション (PDFバーコードリーダーオプション) 「で利用可能なものを除いて、操作することができる」 バーコードリーダーオプション

DPI

ユーザーは、PDFドキュメント内のバーコード画像のDPI(Dots Per Inch、ドットパーインチ)を指定することができます。 これは、PDFドキュメント内の低品質なバーコード画像を読み取るのに役立ちます。 このプロパティは、使用して設定できます 整数 値 (あたい).

ページ番号

ユーザーが事前にPDFドキュメント内でバーコードを読み取る必要があるページ番号を知っている場合、このプロパティで指定することができます。 これを行うことで、特にページ数の多いPDFドキュメントの場合、IronBarcodeの読み取り性能が大幅に向上します。IronBarcodeがすべてのページやバーコードがないページを読み取る必要がなくなるためです。 このプロパティは1から始まります。つまり、PDFドキュメントの最初のページは0ではなく1です。

パスワード

名前が示すように、このプロパティは、PDFドキュメントの内容にアクセスするためにパスワード入力が必要な暗号化されたPDFファイルを扱うことをユーザーに可能にします。 ただし、IronBarcode はPDFドキュメントにパスワードを設定することはできませんのでご注意ください。 このプロパティは受け入れます 文字列 以下の内容を日本語に翻訳してください:

IronPDF for .NETは、PDFドキュメントの生成、読み込み、および操作を容易にする統合ツールです。このライブラリは、C#やVB.NETの開発者に最適化されています。IronPDFは、PDFファイルの作成と編集機能を提供するだけでなく、高度なHTML-to-PDF変換もサポートしています。これにより、ウェブページもしくはHTMLコードを直接PDFフォーマットに変換することができます。

IronOCR for .NETを使用すると、開発者は光学文字認識(OCR)技術をアプリケーションに統合し、スキャンされたドキュメントや画像からテキストを抽出することができます。IronOCRは、さまざまな言語とフォントをサポートしているため、正確なテキスト認識を実現します。

IronXL for .NETは、エクセルファイルの読み書きや操作をサポートする強力なライブラリです。IronXLを使用すれば、Microsoft Excelをインストールせずに、スプレッドシートのデータを簡単に操作することができます。

IronBarcode for .NETは、さまざまなバーコードの生成および読み取りをサポートするツールです。このライブラリを使用すれば、1Dおよび2Dバーコードを簡単に作成し、スキャンすることができます。

ご提供いただきありがとうございます。

スケール

このプロパティにより、ユーザーは管理することができます 尺度係数 イメージに変換する際の幅と高さのスケーリング用。 このプロパティは受け入れます 整数 値として、このプロパティのデフォルト値は3.5です。このプロパティを設定することにより、PDFドキュメント内に存在する小さなバーコードを読み取る際に役立ちます。スケーリングアップすると、PDFドキュメントがズームされます。

PDFドキュメントからの高度なバーコード読み取り

物件がわかりましたので PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) 調整および微調整が可能なので、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
VB   C#

上記のコードスニペットは、どのように実装するかを示しています PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) IronBarcodeのプロパティ。 その PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) プロパティにアクセスして調整する前に、最初に変数名で初期化する必要があります。 コードスニペットでも、PDFドキュメントのページ番号のリストが初期化時の引数として使用されていることがわかります。 PdfBarcodeReaderOptions (PDFバーコードリーダーオプション). この設定を適用するページ番号を指定します。 PdfBarcodeReader 申請する。 ユーザーはPDFページ番号も指定できます PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) プロパティとして ページ番号.

一方、プロパティを使用することもできることがわかります。 バーコードリーダーオプション 例えば 複数のバーコードを予期する そして バーコードタイプを期待 イン Pdfバーコードリーダーオプション 元のクラスから継承されるためです。 これは全体的な読み取りパフォーマンスと精度に大きく役立ちます。 設定されたプロパティを適用するには PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) (PDFバーコードリーダーオプション) バーコード読み取り時に、変数名を入力します PdfBarcodeReaderOptions (PDFバーコードリーダーオプション) (PDFバーコードリーダーオプション) 次の引数として作成したクラス バーコードリーダー.ReadPdf() method, with PDF document to be read file path as the first argument.

ハイリル ハシミ ビン オマル

ソフトウェアエンジニア

すべての優れたエンジニアと同じように、Hairilは熱心な学習者です。C#、Python、およびJavaの知識を洗練させ、その知識を活かしてIron Softwareのチームメンバーに価値を提供しています。Hairilはマレーシアのマラ工科大学(Universiti Teknologi MARA)で化学およびプロセス工学の学士号を取得し、Iron Softwareチームに加わりました。