製品比較

iTextSharp 読み取りPDF代替(開発者チュートリアル)

公開済み 2024年4月3日
共有:

PDF(ポータブルドキュメントフォーマット)は、ドキュメントを一貫して安全に共有するために広く使用されているファイル形式です。 C#でそのようなファイルを読み取り操作することは、ドキュメント管理システムやレポートツールなど、さまざまなアプリケーションで一般的な要件です。 この記事では、C#でPDFファイルを読み取るための2つの人気ライブラリであるIronPDFとiTextSharpを比較します。(最新の.NETライブラリ iText).

IronPDFから提供されている包括的なC#ライブラリです。Iron SoftwarePDFファイルを扱うための幅広い機能を提供します。 開発者がPDFドキュメントをシームレスに作成、編集、および操作できるようにします。 IronPDFはそのシンプルさと使いやすさで知られており、PDF機能をアプリケーションに素早く統合する必要がある開発者に最適です。

iTextSharpC#のPDFファイルを扱うためのもう一つの人気ライブラリです。 それはかなり前から存在しており、業界で広く使用されています。 iTextは、PDFドキュメントの作成および操作のための豊富な機能セットを提供します。 それは柔軟性と拡張性で知られており、複雑なPDF関連のタスクに適しています。

C&#17でPDFを読むためにIronPDFとiTextSharpを使う方法;

  1. Visual Studioで新しいC#プロジェクトを作成し、PDFファイルを読むためのIronPDFとiTextSharpを比較してください。

  2. プロジェクトにIronPDFとiTextSharpライブラリをインストールします。

  3. IronPDFを使用してPDFファイルを読み取る。

  4. iTextSharpを使用してPDFファイルを読み取る。

前提条件

  1. Visual Studio: Visual Studio または他の C# 開発環境がインストールされていることを確認してください。

  2. NuGetパッケージマネージャー: プロジェクト内でパッケージを管理するためにNuGetを使用できるようにしてください。

ステップ1: Visual Studioで新しいCプロジェクトを作成し、IronPDFとiTextSharpのPDFファイルの読み込みを比較する。

まず、C#コンソールアプリケーションを設定します。 Visual Studio を開いて、新しいプロジェクトを作成するを選択します。 コンソールアプリケーションタイプを選択します。

iTextSharp 読み取りPDF 代替案 (開発者チュートリアル): 図1 - コンソール アプリ

以下に示すようにプロジェクト名を提供してください。

iTextSharp PDF読み取りの代替案(開発者チュートリアル):図2 - プロジェクト設定

プロジェクトに必要な .NET バージョンを選択します。

iTextSharp PDF読み取りの代替案(開発者チュートリアル):図3 - フレームワーク

これが完了すると、Visual Studio は新しいプロジェクトを生成します。

ステップ2: プロジェクトに IronPDF と iTextSharp ライブラリをインストールします

iTextSharpは、iText用NuGetパッケージマネージャパッケージマネージャー。 最新バージョンは、iTextパッケージとして入手できます。

iTextSharp PDF読取代替案(開発者チュートリアル):図4 - iText

以下に示すように、Visual Studio パッケージ マネージャーからもインストールできます。 パッケージマネージャーで iText を検索し、インストールをクリックしてください。

iTextSharp 読み取りPDFの代替ソフトウェア(開発者チュートリアル):図5 - NuGetパッケージマネージャー

IronPDF以下からインストールできますIronPDF用NuGetパッケージマネージャ以下のとおりです。

iTextSharp PDF読取の代替手段(開発者向けチュートリアル):図6 - IronPDF

以下に示すように、Visual Studio パッケージマネージャーからもインストールできます。 検索IronPDF: C# PDFライブラリパッケージマネージャーで「インストール」をクリックします。

iTextSharp のPDF読み取り代替手段(開発者チュートリアル):図7 - IronPDFのインストール

ステップ3: IronPDF を使用して PDF ファイルからテキストを読み取る

プログラム.csファイルに以下のコードを追加し、以下の内容を持つサンプルPDF文書を提供してください。

iTextSharpでPDFを読み込む代替方法(開発者チュートリアル):図8 - PDF入力

using IronPdf;
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");
// pdfreader reader
ReadUsingIronPDF.Read();
public class ReadUsingIronPDF
{
    public static void Read()
    {
        // read from specific location
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        var pdfReader = PdfDocument.FromFile(filename);
        // Get all text to put in a search index using new simpletextextractionstrategy
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");
        var allIMages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images={allIMages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine("------------------one Page Text From PDF page-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string Text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(Text);
        }
    }
}
using IronPdf;
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");
// pdfreader reader
ReadUsingIronPDF.Read();
public class ReadUsingIronPDF
{
    public static void Read()
    {
        // read from specific location
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        var pdfReader = PdfDocument.FromFile(filename);
        // Get all text to put in a search index using new simpletextextractionstrategy
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");
        var allIMages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images={allIMages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine("------------------one Page Text From PDF page-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string Text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(Text);
        }
    }
}
Imports IronPdf
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#")
' pdfreader reader
ReadUsingIronPDF.Read()
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingIronPDF
'{
'	public static void Read()
'	{
'		' read from specific location
'		string filename = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'		var pdfReader = PdfDocument.FromFile(filename);
'		' Get all text to put in a search index using new simpletextextractionstrategy
'		var allText = pdfReader.ExtractAllText();
'		Console.WriteLine("------------------Text From PDF-----------------");
'		Console.WriteLine(allText);
'		Console.WriteLine("------------------Text From PDF-----------------");
'		var allIMages = pdfReader.ExtractAllImages();
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'		Console.WriteLine(string.Format("Total Images={0}", allIMages.Count()));
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'		Console.WriteLine("------------------one Page Text From PDF page-----------------");
'		var pageCount = pdfReader.PageCount;
'		for (int page = 0; page < pageCount; page++)
'		{
'			string Text = pdfReader.ExtractTextFromPage(page);
'			Console.WriteLine(Text);
'		}
'	}
'}
VB   C#

コードの説明

  1. テキストのPDFを作成するには、Word文書を作成し、上記のテキストをWord文書に追加し、Example.pdfという名前のPDF文書として保存します。

  2. コード内で、PDFファイルパスからPDFReaderを作成し、すべてのテキストを抽出します。

  3. PDF内の画像はExtractImagesメソッドを使用して抽出できます。

  4. PDFドキュメントの各ページは、ExtractTextFromPageメソッドを使用して読み取ることができます。

出力

iTextSharpのPDF読み取り代替案 (開発者チュートリアル):図9 - IronPDFを使用してPDFを読み取る出力

手順 3: iTextSharpを使用してPDFファイルからテキストを読み取ります

iTextSharpから読み取ったテキストを比較するために、以下のコードを同じprogram.csファイルに追加します。簡単のために、クラスを別々のファイルに分けていません。

using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");
//ReadUsingIronPDF.Read();
ReadUsingITextSharp.Read();
public class ReadUsingITextSharp
{
    public static void Read()
    {
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        // Create a PDF reader
        PdfReader pdfReader = new PdfReader(pdfFile);
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);
        // Extract plain text from the PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
        // Display or manipulate the extracted text as needed
        Console.WriteLine(pdfText);
    }
}
using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");
//ReadUsingIronPDF.Read();
ReadUsingITextSharp.Read();
public class ReadUsingITextSharp
{
    public static void Read()
    {
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";
        // Create a PDF reader
        PdfReader pdfReader = new PdfReader(pdfFile);
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);
        // Extract plain text from the PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
        // Display or manipulate the extracted text as needed
        Console.WriteLine(pdfText);
    }
}
Imports IronPdf
Imports iText.Kernel.Pdf
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#")
'ReadUsingIronPDF.Read();
ReadUsingITextSharp.Read()
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingITextSharp
'{
'	public static void Read()
'	{
'		string pdfFile = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'		' Create a PDF reader
'		PdfReader pdfReader = New PdfReader(pdfFile);
'		iText.Kernel.Pdf.PdfDocument pdfDocument = New iText.Kernel.Pdf.PdfDocument(pdfReader);
'		' Extract plain text from the PDF
'		LocationTextExtractionStrategy strategy = New LocationTextExtractionStrategy();
'		string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
'		' Display or manipulate the extracted text as needed
'		Console.WriteLine(pdfText);
'	}
'}
VB   C#

出力

iTextSharp 読み取り用PDF代替ソフトウェア (開発者チュートリアル): 図10 - iTextSharpを使用してPDFを読み取る出力

iTextSharpの制限事項

  1. 学習曲線: iTextSharpには、特に初心者にとって学習曲線が急です。

  2. ライセンス:iTextSharpのライセンシングモデルは、特に予算制約のあるプロジェクトには適さない場合があります。

IronPDFのメリット

  1. 使いやすさ: IronPDFは、その直感的なAPIで知られており、開発者が簡単に始められます。

  2. ドキュメントレンダリング: IronPDFはPDFドキュメントの正確なレンダリングを提供し、抽出されたテキストが元の内容に忠実であることを保証します。

ライセンス(無料トライアル利用可能)

あなたのIronPdfライセンスキーこのキーを appsettings.json ファイルに入力してください。

"IronPdf.LicenseKey": "your license key"

試用ライセンスを受け取るには、メールアドレスをご提供ください。

結論

選択IronPDFそして、iTextSharpは、プロジェクトの具体的な要件に依存します。 一般的なPDF操作のためのシンプルで使いやすいライブラリが必要な場合、IronPDFがより良い選択かもしれません。意思決定の際には、アプリケーションの複雑さ、予算、学習曲線などの要因を考慮してください。

IronPDFは、フォーマットされたドキュメントをPDFに変換する作業を簡単に処理し、アプリケーションにPDF生成をシームレスに統合できるように設計されています。 この多用途ツールを使用すると、.NETを使用してウェブフォーム、ローカルHTMLページ、およびその他のウェブコンテンツをPDFに変換できます。 ユーザーは文書を簡単にダウンロード、メール送信、またはクラウドに保存できます。 請求書、見積書、レポート、契約書、またはその他のプロフェッショナルな文書を作成する必要がある場合、IronPDFのPDF生成機能をカバーしています。 IronPDFの直感的で効率的なPDF生成機能で、アプリケーションをさらに向上させましょう。

< 以前
iTextSharpを使用してC#でPDF文書を読む方法:
次へ >
PDFsharp対iTextSharp(C# PDFライブラリ比較)